Conversion de texte en nombres

Les paramètres par défaut dans Calc convertissent le texte à l'intérieur des cellules en valeurs numériques correspondantes si une conversion non ambiguë est possible. Si aucune conversion n'est possible, Calc renvoie une erreur #VALEUR!.

Seuls les nombres entiers incluant les exposants sont convertis et les dates et heures ISO 8601 dans leur formats étendus avec séparateurs. Tout autre chose, comme les nombres fractionnaires avec séparateurs décimaux ou les dates autres que ISO 8601 n'est pas converti, dans la mesure où la chaîne de texte dépend de la locale. Les espaces en début et fin sont ignorés.

Les formats ISO 8601 suivants sont convertis :

Le code de siècle CC ne doit pas être omis. À la place du séparateur de date et d'heure T, un caractère d'un espace exactement peut être utilisé.

Si une date est donnée, elle doit être une date valide du calendrier Grégorien. Dans ce cas, l'heure facultative doit être dans la plage de 00:00 à 23:59:59.99999...

Si seule une chaîne d'heure est donnée, elle peut avoir une valeur d'heures supérieure à 24, alors que les minutes et les secondes peuvent avoir une valeur maximum de 59.

note

La conversion est faite pour les valeurs scalaires uniques, non à travers les plages.


La conversion est faite pour des valeurs scalaires uniques, come dans =A1+A2, ou ="1E2"+1. Les arguments de plage de cellules ne sont pas affectés, donc SOMME(A1:A2) diffère de A1+A2 si au moins une des cellules contient une chaîne convertible.

Les chaînes à l'intérieur des formules sont aussi converties, telles que ="1999-11-22"+42, qui renvoie la date 42 jours après le 11 Novembre 1999. Les calculs incluant des dates traduites comme chaînes à l'intérieur d'une formule renvoient une erreur. Par exemple, les chaînes de dates traduites "11/22/1999" ou "22.11.1999" ne peuvent pas être utilisées pour de la conversion automatique.

warning

When using functions where one or more arguments are search criteria strings that represents a regular expression, the first attempt is to convert the string criteria to numbers. For example, ".0" will convert to 0.0 and so on. If successful, the match will not be a regular expression match but a numeric match. However, when switching to a locale where the decimal separator is not the dot makes the regular expression conversion work. To force the evaluation of the regular expression instead of a numeric expression, use some expression that can not be misread as numeric, such as ".[0]" or ".\0" or "(?i).0".


Exemple

Dans A1, saisissez le texte '1e2 (qui est converti en nombre 100 en interne).

Dans A2, saisissez =A1+1 (qui résulte correctement en 101).

La formule =SUM(A1:A2) renvoie 101 au lieu de 201 parce que la conversion n'intervient pas dans une plage, seulement pour des valeurs scalaires uniques. Ici, '1e2 est traité comme une chaîne qui a la valeur 0 pour la fonction SOMME.

=SUM("1E2";1) renvoie #VALEUR! parce que SOMME() et et d'autres qui parcourent des suites de nombres vérifient explicitement le type d'argument.

Modification des paramètres de conversion de texte en nombre par défaut

La conversion de texte en nombre peut être personnalisée dans les Detailed Calculation Settingsoptions.