Převod textu na čísla
Defaults settings in Calc converts text inside cells to the respective numeric values if an unambiguous conversion is possible. If no conversion is possible, Calc returns a #VALUE! error.
Only integer numbers including exponent are converted, and ISO 8601 dates and times in their extended formats with separators. Anything else, like fractional numbers with decimal separators or dates other than ISO 8601, is not converted, as the text string would be locale dependent. Leading and trailing blanks are ignored.
Převáděny jsou následující formáty podle ISO 8601:
-
CCYY-MM-DD
-
CCYY-MM-DDThh:mm
-
CCYY-MM-DDThh:mm:ss
-
CCYY-MM-DDThh:mm:ss,s
-
CCYY-MM-DDThh:mm:ss.s
-
hh:mm
-
hh:mm:ss
-
hh:mm:ss,s
-
hh:mm:ss.s
Kód století CC nelze vynechat. Místo oddělovače data a času T smí být použita právě jedna mezera.
Je-li zadáno datum, musí se jednat o platné datum gregoriánského kalendáře. Volitelný čas musí být v tomto případě v rozmezí 00:00 až 23:59:59.99999...
Je-li zadán pouze řetězec pro čas, hodnota hodin může být větší než 24, ale minuty a sekundy mohou dosáhnout maximálně hodnoty 59.
The conversion is done for single scalar values only, not within ranges.
The conversion is done for single scalar values, as in =A1+A2, or ="1E2"+1. Cell range arguments are not affected, so SUM(A1:A2) differs from A1+A2 if at least one of the two cells contain a convertible string.
Převáděny jsou také řetězce ve vzorcích, například ="1999-11-22"+42 vrátí datum následující 42 dnů po 22. prosinci 1999. Výpočet vzorce, který obsahuje řetězec s datem v místním nastavení, vrátí chybu. Pro automatický převod tak nemůže být použit například řetězec "11/22/1999" nebo "22.11.1999".
Příklad
In A1 enter the text '1e2 (which is converted to the number 100 internally).
In A2 enter =A1+1 (which correctly results in 101).
The formula =SUM(A1:A2), returns 101 instead of 201 because the conversion does not occur in a range, only for single scalar values. Here, '1e2 is treated as string which has value 0 for the SUM function.
=SUM("1E2";1) returns #VALUE! because SUM() and some others that iterate over number sequences explicitly check the argument type.
Changing the default text to number conversion settings
The text to number conversion can be customized in the Detailed Calculation Settings option.