DataFormat.Error: Nie można przekonwertować wartości na liczbę podczas przetwarzania danych
W tym artykule skupiono się na rozwiązaniu problemu „ DataFormat.Error: We could’t convert to Number ”. Korzystanie z dodatku Power Query w programie Excel lub Power BI usprawnia analizę danych i raportowanie, ale użytkownicy mogą często napotykać problemy związane z konwersją typu danych, szczególnie w przypadku niespójnych formatów.
Niezależnie od tego, czy jest to wynik nieprawidłowych ograniczników, mieszanki typów danych, czy problemów związanych z ustawieniami regionalnymi, czynniki te mogą wprowadzić Power Query w błąd i doprowadzić do błędnej interpretacji danych. Ta błędna interpretacja prowadzi do błędu konwersji, który jest określany jako:
DataFormat.Error: Nie mogliśmy przekonwertować na Number. Szczegóły: [error_details]
W tym przewodniku przyjrzymy się bliżej najczęstszym przyczynom błędów i zaproponujemy skuteczne rozwiązania problemów.
Rozwiązywanie błędu DataFormat.Error: Nie udało się przekonwertować na liczbę
Aby rozwiązać problem z błędem DataFormat.Error: Nie mogliśmy przekonwertować na liczbę w usłudze Power Query dla programu Excel lub Power BI , należy rozważyć zastosowanie następujących metod:
- Usuń automatyczny krok „Zmień typ”
- Wyeliminuj wartości nieliczbowe
- Standaryzacja i oczyszczenie danych przed konwersją
- Ustaw ograniczniki i ustawienia regionalne ręcznie
- Dostosuj odpowiednio separatory dziesiętne i tysięczne
Przyjrzyjmy się bliżej każdemu rozwiązaniu.
1] Usuń automatyczny krok „Zmień typ”
Power Query często dodaje krok „Zmień typ” automatycznie po zaimportowaniu danych, próbując przypisać typy danych na podstawie próbki pierwszych 1000 wierszy. Jeśli zestaw danych zawiera mieszane typy, takie jak liczby i tekst w tej samej kolumnie, ten automatyczny proces może wywołać komunikat „DataFormat.Error: We could’t convert to Number”.
Aby rozwiązać ten problem, przejdź do karty Dane (w programie Excel) i wybierz opcję Pobierz dane > Uruchom edytor Power Query (lub kliknij opcję Przekształć dane w usłudze Power BI).
W prawym pasku bocznym okna Edytora Power Query znajdziesz sekcję Zastosowane kroki . Jeśli pojawi się krok „ Zmieniony typ ”, oznacza to automatyczne przypisanie typu. Kliknij X obok tego kroku, aby go usunąć, zapobiegając dalszym automatycznym konwersjom przez Power Query.
Po przejściu etapu „Zmieniony typ” należy ręcznie określić typ danych dla każdej kolumny, aby zapewnić ich poprawność.
2] Wyeliminuj wartości nie będące liczbami
Kolumny łączące tekst i wpisy liczbowe (takie jak „ABC 123”) mogą spowodować, że Power Query spróbuje przeprowadzić konwersję liczbową na całej planszy, co skutkuje wyżej wymienionym błędem. Aby to naprawić, możesz:
- Zmień typ danych kolumny na „Tekst”, użyj funkcji Zamień wartości , aby poprawić błędne wpisy, a następnie przywróć typ danych na „Liczba dziesiętna”.
- Zastosuj funkcję podziału kolumny , aby podzielić dane według określonego ogranicznika, stosując typ „Liczba” do segmentu liczbowego, a typ „Tekst” do drugiego.
- Przed przekonwertowaniem kolumny na format liczbowy odfiltruj wiersze zawierające wpisy niebędące liczbami, które nie powinny się tam znajdować.
Po odfiltrowaniu wpisów niebędących liczbami zmiana typu danych oryginalnej kolumny powinna przebiegać bez problemów.
3] Standaryzacja i oczyszczenie danych przed konwersją typu
Dane pobrane ze stron internetowych lub różnych źródeł mogą zawierać nierozdzielające spacje lub symbole, takie jak „&” i „,”, które utrudniają konwersję lub scalanie kolumn w programie Power Query.
Aby usunąć te niechciane znaki, należy skorzystać z funkcji CLEAN i TRIM dostępnych w menu Transform (funkcja TRIM usuwa zbędne spacje, natomiast CLEAN usuwa wszystkie niedrukowalne znaki, co jest szczególnie przydatne przy czyszczeniu zewnętrznych importów danych).
Po zastosowaniu tych funkcji spróbuj jeszcze raz ustawić typ danych kolumny.
4] Ręcznie ustaw ograniczniki i ustawienia regionalne
Jeśli Twoje dane obejmują określone formaty regionalne, konieczne jest zapewnienie, że Power Query działa z prawidłowym ogranicznikiem i ustawieniami regionalnymi. Na przykład, jeśli przetwarzasz dane europejskie, które używają przecinków jako miejsc dziesiętnych, ręcznie dostosuj ustawienia regionalne, przechodząc do Plik > Opcje > Opcje zapytania > Ustawienia regionalne i zmieniając opcję Ustawienia regionalne , aby dokładnie odzwierciedlała źródło danych.
W przypadku pojedynczej kolumny można użyć opcji Zmień typ > Używając ustawień regionalnych , aby ułatwić poprawną konwersję po zastosowaniu odpowiednich ustawień regionalnych.
Ponadto, podczas pracy z plikami CSV, sprawdź, czy w danych użyto przecinków lub średników jako ograniczników i odpowiednio dostosuj te ustawienia podczas importowania.
5] Odpowiednio dostosuj separatory dziesiętne i tysięczne
Na koniec, jeśli program Power Query ma problemy z konwersją liczb ze względu na niespójne separatory dziesiętne i tysięczne, skorzystaj z funkcji Zamień wartości, aby poprawić niezgodne separatory (na przykład zamień „.” na „,”, aby zachować formatowanie europejskie).
Na tym kończymy nasze porady dotyczące rozwiązywania problemów!
Jak rozwiązać błąd DataFormat: nie można przekonwertować na liczbę?
Upewnij się, że kolumny, z którymi masz do czynienia, są poprawnie sformatowane jako „Tekst” lub „Liczba”. W przypadku napotkania błędu „DataFormat.Error: We could’t convert to Number” sprawdź sekcję „Details” komunikatu o błędzie, która często podświetla konkretny wpis lub znak, którego Power Query nie może przetworzyć jako liczby. Jeśli w jednej kolumnie występują zarówno typy tekstowe, jak i numeryczne, rozważ podzielenie jej na oddzielne kolumny, a następnie przypisanie odpowiedniego typu danych do kolumny numerycznej.
Dlaczego program Excel uniemożliwia mi konwersję na liczbę?
Excel może uniemożliwić konwersję liczb przechowywanych w tekście do formatu numerycznego, jeśli komórki są sformatowane jako „Tekst” lub zawierają ukryte znaki, takie jak nierozdzielane spacje lub symbole specjalne. Ponadto, jeśli jakiekolwiek dotknięte komórki zostaną scalone, Excel może ograniczyć niektóre funkcje, w tym konwersję liczb. Pamiętaj o rozdzieleniu tych komórek przed próbą jakichkolwiek konwersji.
Dodaj komentarz