Konwertowanie tekstu do liczb

Domyślne ustawienia programu Calc konwertują tekst w komórkach na odpowiednie wartości liczbowe, jeśli możliwa jest jednoznaczna konwersja. Jeśli konwersja nie jest możliwa, program Calc zwraca błąd #VALUE!.

Konwertowane są tylko liczby całkowite, w tym wykładnik, oraz daty i godziny ISO 8601 w ich rozszerzonych formatach z separatorami. Wszystko inne, jak liczby ułamkowe z separatorami dziesiętnymi lub daty inne niż ISO 8601, nie jest konwertowane, ponieważ ciąg tekstowy byłby zależny od ustawień regionalnych. Początkowe i końcowe spacje są ignorowane.

Konwersja jest możliwa dla następujących formatów ISO 8601:

Nie można pominąć wieku, WW. Zamiast separatora daty i godziny T można użyć dokładnie jednej spacji.

Podana data musi być prawidłową datą z kalendarza gregoriańskiego. W takim przypadku opcjonalna wartość godziny musi być z zakresu od 00:00 do 23:59:59.99999...

Po podaniu tylko ciągu z datą wartość godzin może być wyższa niż 24, ale maksymalna wartość minut i sekund to 59.

note

Konwersja jest wykonywana tylko dla pojedynczych wartości skalarnych, a nie w zakresach.


Konwersja jest wykonywana dla pojedynczych wartości skalarnych, jak w przypadku =A1+A2, or ="1E2"+1. Nie ma to wpływu na argumenty zakresu komórek, więc SUM(A1:A) różni się od A1+A2, jeśli co najmniej jedna z dwóch komórek zawiera ciąg konwertowalny.

Konwersji podlegają także ciągi tekstowe wewnątrz formuł, takie jak ="1999-11-22"+42. Formuła ta zwraca datę występującą 42 dni po 22 listopada 1999 r. Obliczenia, w których wewnątrz formuły występują zlokalizowane daty zapisane jako ciąg tekstowy, zwracają błąd. Na przykład zlokalizowany ciąg z datą "11/22/1999" lub "22.11.1999" nie może być wykorzystany do automatycznej konwersji.

warning

W przypadku korzystania z funkcji, w których jeden lub więcej argumentów to ciągi kryteriów wyszukiwania reprezentujące wyrażenie regularne, pierwszą próbą jest przekonwertowanie kryteriów ciągu na liczby. Na przykład „.0” zostanie przekonwertowane na 0,0 i tak dalej. Jeśli się powiedzie, dopasowanie nie będzie dopasowaniem wyrażenia regularnego, ale dopasowaniem liczbowym. Jednak po przełączeniu na ustawienia regionalne, w których separatorem dziesiętnym nie jest kropka, konwersja wyrażeń regularnych działa. Aby wymusić ocenę wyrażenia regularnego zamiast wyrażenia liczbowego, użyj wyrażenia, którego nie można błędnie odczytać jako liczbowego, takiego jak „.[0]”, „.\0” lub „(?i).0”.


Przykład

W komórce A1 wpisz tekst '1e2 (który jest wewnętrznie konwertowany na liczbę 100).

W A2 wpisz =A1+1 (co poprawnie daje 101).

Formuła =SUM(A1:A2) zwraca 101 zamiast 201, ponieważ konwersja nie zachodzi w zakresie, tylko dla pojedynczych wartości skalarnych. Tutaj '1e2 jest traktowane jako ciąg znaków, który jest ignorowany przez funkcję SUM.

=SUM("1E2";1) zwraca #VALUE! ponieważ SUM() i niektóre inne, które iterują po sekwencjach liczb, jawnie sprawdzają typ argumentu.

Zmiana domyślnych ustawień konwersji tekstu na liczby

Konwersję tekstu na liczby można dostosować w opcji Szczegółowe ustawienia obliczeń.

Prosimy o wsparcie!