=WARTOŚĆ(A2) (po angielsku VALUE) zamienia liczbę zapisaną jako tekst w A2 na prawdziwą liczbę. Liczby tekstowe wyglądają normalnie, ale SUMA, ŚREDNIA i ILE.LICZB (SUM, AVERAGE, COUNT) je pomijają, i dlatego suma może wyjść 0. Tabela pokazuje formuły po angielsku, =VALUE(A2), ale możesz w niej wpisywać formuły także po polsku, ze średnikami:
| A | B | C | |
|---|---|---|---|
| 1 | Imported | VALUE | |
| 2 | 120 | 120 | |
| 3 | 85 | 85 | |
| 4 | 240 | 240 | |
| 5 | 15 | 15 | |
| 6 | 0 | 460 |
=WARTOŚĆ(A2)A6 sumuje się do 0, bo cztery komórki w kolumnie A to tekst (wpisany z apostrofem, jak często bywa z danymi zaimportowanymi z pliku CSV albo ze strony internetowej). Kolumna C zamienia każdą z nich, a C6 daje prawdziwą sumę, 460.
Jak rozpoznać liczbę zapisaną jako tekst
W Excelu liczba zapisana jako tekst:
- stoi przy lewej krawędzi komórki, a liczby stoją przy prawej (chyba że zmieniono wyrównanie);
- ma mały zielony trójkąt w lewym górnym rogu komórki, a po zaznaczeniu ikonę ostrzeżenia z komunikatem „Liczba przechowywana jako tekst”;
- jest liczona przez ILE.NIEPUSTYCH (COUNTA), ale nie przez ILE.LICZB (COUNT).
| A | B | C | D | E | |
|---|---|---|---|---|---|
| 1 | Value | ISNUMBER | ISTEXT | Text numbers | |
| 2 | 120 | TRUE | FALSE | 2 | |
| 3 | 85 | FALSE | TRUE | ||
| 4 | 240 | TRUE | FALSE | ||
| 5 | 15 | FALSE | TRUE |
=CZY.LICZBA(A2)E2 liczy, ile komórek zakresu jest wypełnionych, ale nie zawiera liczb: tutaj dwie wpisane z apostrofem. Na czystej kolumnie liczb zwraca 0.
Cztery formuły, które zamieniają
| A | B | C | |
|---|---|---|---|
| 1 | Text | Result | How |
| 2 | 1250 | 1250 | VALUE |
| 3 | 1250 | double minus | |
| 4 | 1250 | multiply by 1 | |
| 5 | 1250 | add 0 |
=WARTOŚĆ(A2)Każde działanie arytmetyczne zmusza Excela do odczytania tekstu jako liczby, a WARTOŚĆ to wersja jawna. -- (dwa minusy: minus, a potem jeszcze raz minus) to popularny wybór wewnątrz innych formuł, bo jest krótki: =SUMA.ILOCZYNÓW(--A2:A5) (SUMPRODUCT) sumuje kolumnę liczb tekstowych bez kolumny pomocniczej. WARTOŚĆ odczytuje też tekst ze znakiem waluty, separatorami tysięcy albo znakiem procentu: VALUE("$1,250") to 1250, a VALUE("12%") to 0.12 (przykłady w angielskim Excelu).
| A | B | |
|---|---|---|
| 1 | Quantity (text) | Quantity |
| 2 | 125 |
Twoja kolej: Ilość w A2 została zaimportowana jako tekst. W B2 zamień ją na liczbę.
Tekst z jednostkami albo innymi separatorami
WARTOŚĆ zwraca #ARG! (po angielsku #VALUE!; tabele pokazują angielskie nazwy błędów), gdy tekst zawiera cokolwiek, czego nie da się odczytać jako liczby. Dwa częste przypadki:
| A | B | C | |
|---|---|---|---|
| 1 | Text | Fixed | Without the fix |
| 2 | 120 kg | 120 | #VALUE! |
| 3 | 1.234,5 | 1234.5 | #VALUE! |
=WARTOŚĆ(PODSTAW(A2;" kg";""))- Jednostka albo słowo: najpierw usuń je funkcją PODSTAW (SUBSTITUTE), jak w B2.
- Przecinek jako separator dziesiętny, jak w
1.234,5z systemu niemieckiego albo brazylijskiego: WARTOŚĆ.LICZBOWA (NUMBERVALUE, Excel 2013 i nowsze) przyjmuje separator dziesiętny i separator grup jako drugi i trzeci argument. WARTOŚĆ zna tylko separatory twojego Excela, więc C3 zawodzi.
Spacje przed cyframi albo po nich nie przeszkadzają funkcji WARTOŚĆ, ale twarde spacje ze stron internetowych już tak; PODSTAW(A2;ZNAK(160);"") najpierw je usuwa. Ogólne przyczyny tego błędu opisuje strona #VALUE!.
| A | B | |
|---|---|---|
| 1 | Amount | Total |
| 2 | 120 | |
| 3 | 45 | |
| 4 | 80 |
Twoja kolej: Kwoty w A2:A4 to liczby zapisane jako tekst. W B2 zwróć ich sumę jedną formułą.
Zamiana na miejscu bez formuły
Formuły wstawiają liczby do nowej kolumny. Aby naprawić same komórki:
- Konwertuj na liczbę. Zaznacz komórki (pierwsza zaznaczona komórka musi mieć zielony trójkąt), kliknij ikonę ostrzeżenia obok zaznaczenia i wybierz Konwertuj na liczbę. To najszybszy sposób.
- Tekst jako kolumny. Zaznacz kolumnę, Dane > Tekst jako kolumny, i od razu kliknij Zakończ. Excel wpisuje każdą komórkę na nowo i zamienia liczby tekstowe w liczby.
- Wklej specjalnie, Mnożenie. Wpisz 1 w pustej komórce i ją skopiuj. Zaznacz liczby tekstowe, Narzędzia główne > Wklej > Wklej specjalnie, wybierz Mnożenie i kliknij OK.
Jeśli komórki mają format Tekst (Narzędzia główne > Format liczb pokazuje „Tekst”), najpierw ustaw Ogólne; w przeciwnym razie wszystko, co w nie wpiszesz, znów zostanie zapisane jako tekst.
Częsty błąd: wyszukiwanie między tekstem a liczbami
Szukana wartość 101 nie pasuje do tekstu 101: WYSZUKAJ.PIONOWO, X.WYSZUKAJ i PODAJ.POZYCJĘ zwracają #N/D! (#N/A), a =A2=101 to FAŁSZ, choć obie komórki wyglądają tak samo. Zamień jedną stronę, żeby obie miały ten sam typ. Gdy tekstowa jest przeszukiwana kolumna, zamień zamiast tego szukaną wartość:
=VLOOKUP(TEXT(E2,"0"), A2:C6, 3, FALSE) E2 is a number, column A holds text numbers
=VLOOKUP(--E2, A2:C6, 3, FALSE) E2 holds a text number, column A holds numbers
W polskim Excelu: =WYSZUKAJ.PIONOWO(TEKST(E2;"0");A2:C6;3;FAŁSZ) i =WYSZUKAJ.PIONOWO(--E2;A2:C6;3;FAŁSZ). Strona o CZY.LICZBA i CZY.TEKST pokazuje, jak sprawdzić każdą stronę.
Najczęściej zadawane pytania
Jak zamienić tekst na liczbę w Excelu?
Formułą: =WARTOŚĆ(A2) albo =--A2. Bez formuły: zaznacz komórki, kliknij ikonę ostrzeżenia, która pojawia się obok nich, i wybierz Konwertuj na liczbę.
Dlaczego SUMA zwraca 0 w Excelu?
Liczby są zapisane jako tekst, a SUMA pomija tekst. Zwykle są wyrównane do lewej i mają mały zielony trójkąt. Zamień je przez =WARTOŚĆ(A2) albo zsumuj je od razu: =SUMA.ILOCZYNÓW(--A2:A10).
Dlaczego Konwertuj na liczbę nie działa albo się nie pojawia?
Excel proponuje to tylko dla tekstu, który potrafi odczytać jako liczbę. Twarda spacja ze strony internetowej, jednostka taka jak kg albo separator dziesiętny, którego twój Excel nie używa, ukrywają zielony trójkąt. Najpierw wyczyść tekst: =WARTOŚĆ(PODSTAW(A2;ZNAK(160);"")) albo =WARTOŚĆ.LICZBOWA(A2;",";".").
Jak zamienić liczby z przecinkiem jako separatorem dziesiętnym?
Użyj WARTOŚĆ.LICZBOWA i podaj separatory: =WARTOŚĆ.LICZBOWA(A2;",";".") zamienia 1.234,5 na 1234,5. WARTOŚĆ rozumie tylko separatory z ustawień twojego Excela.