Dette indlæg forklarer, hvordan du løser 'DataFormat.Error: Vi kunne ikke konvertere til Number'. Arbejde med data iStrømforespørgsel, om iExcelellerPower BI, kan strømline analyse og rapportering. Datatypekonverteringsfejl er dog en almindelig frustration, som mange brugere står over for, især når de håndterer inkonsistente formater.
Uanset om der er uoverensstemmende afgrænsninger, blandede datatyper eller regionale indstillinger, kan problemerne få Power Query til at fejlfortolke dataene, hvilket fører til en konverteringsfejl, der lyder:
DataFormat.Error: Vi kunne ikke konvertere til Number. Detaljer: [error_details]
I dette indlæg vil vi udforske de grundlæggende årsager bag fejlen og give praktiske løsninger til fejlfinding af problemet.
Ret DataFormat.Error: Vi kunne ikke konvertere til Number
At retteDataFormat.Error, vi kunne ikke konvertere til Number, når du arbejder med data iStrømforespørgsel, om iExcelellerPower BIbrug disse løsninger:
- Slet det automatiske 'Skift type'-trin
- Filtrer ikke-numeriske værdier fra
- Rens og standardiser data før typekonvertering
- Indstil afgrænsere og landestandard manuelt
- Korrekt decimal- og tusindseparatorer
Lad os se dette i detaljer.
1] Slet det automatiske 'Skift type'-trin
Power Query tilføjer ofte automatisk et "Change Type"-trin efter indlæsning af data for at prøve at tildele datatyper til kolonner baseret på de første 1.000 rækker. Hvis dine data indeholder inkonsistente typer, såsom tal blandet med tekst i samme kolonne, kan dette automatiske trin forårsage 'DataFormat.Error: Vi kunne ikke konvertere til tal'.
For at rette dette skal du gå tilDatafanen (i Excel), og vælgHent data > Start Power Query Editor(i Power BI skal du klikkeTransformer data).
På højre side af Power Query Editor-vinduet kan du seAnvendte trinrude. Hvis der er et trin kaldet 'Ændret Type', har Power Query automatisk tildelt datatyper. Klik påXved siden af trinnet for at slette det. Dette forhindrer Power Query i at forsøge automatiske konverteringer.
Når du har slettet trinnet 'Ændret type', skal du manuelt indstille datatypen for hver kolonne for at sikre, at den er korrekt.
2] Filtrer ikke-numeriske værdier fra
Kolonner, der indeholder både tekst og numeriske værdier (f.eks. "ABC 123") kan få Power Query til at forsøge at konvertere alt til et tal, hvilket fører til ovenstående fejl. Du kan gøre et par ting for at rette op på dette:
- Skift datatypen for kolonnen til 'Tekst', brugErstat værdiermulighed for at rette den problematiske indtastning, og derefter vende datatypen tilbage til 'Decimaltal'.
- BrugOpdelt kolonnefunktion til. Anvend derefter datatypen 'Nummer' på den numeriske kolonne og typen 'Tekst' på den anden.
- Du kan også bortfiltrere rækker med ikke-numeriske værdier (som ikke burde være der), før du konverterer kolonnen til datatypen Nummer.
Efter at have filtreret ikke-numeriske værdier fra, kan du sikkert ændre den oprindelige kolonnes datatype.
3] Rens og standardiser data før typekonvertering
Data kopieret fra websteder eller andre kilder kan indeholde mellemrum eller symboler som ikke bryder, som "&" eller "," der forvirrer Power Query, mens de forsøger at konvertere eller flette kolonner.
AnvendRENellerTRIMfunktion fraTransformmenuen for at fjerne disse tegn (TRIM-funktionen fjerner ekstra mellemrum fra tekst og efterlader kun enkelte mellemrum mellem ordene, CLEAN-funktionen fjerner alle ikke-udskrivbare tegn og er især nyttig til at rense data importeret fra eksterne kilder, hvor skjulte tegn kan eksistere).
Efter at have anvendt disse funktioner, prøv at indstille kolonnens datatype igen.
4] Indstil afgrænsere og landestandard manuelt
Hvis dine data involverer regionale indstillinger, skal du sikre dig, at Power Query bruger den korrekte afgrænsning og lokalitet. Hvis du f.eks. arbejder med europæiske data, hvor kommaer bruges som decimalseparatorer, skal du manuelt indstille dataens lokalitet ved at gå tilFil > Indstillinger > Forespørgselsindstillinger > Regionale indstillingerog justering afLokalitetfor at matche datakilden.
Hvis det er en enkelt kolonne, skal du brugeSkift type > Brug af lokalitetmulighed for at sikre korrekt datatypekonvertering med de korrekte regionale indstillinger anvendt.
På samme måde, for CSV-filer, skal du kontrollere, om dataene bruger kommaer eller semikolon som afgrænsning, og manuelt justere dette under import.
5] Korrekt decimal- og tusindseparatorer
Til sidst, hvis Power Query ikke konverterer tal på grund af uoverensstemmende decimaltegn og tusinde separatorer, skal du bruge indstillingen Erstat værdier til at skifte den forkerte separator (f.eks. ændre '.' til ',' for europæiske data) for at matche det forventede format.
Det er alt!
Læse: .
Hvordan løses DataFormat-fejl, som vi ikke kunne konvertere til tal?
Sørg for, at de kolonner, du arbejder med, er korrekt formateret som 'Tekst' eller som 'Nummer'. Når du støder på 'DataFormat.Error: Vi kunne ikke konvertere til nummer', skal du se under 'Detaljer' i fejlmeddelelsen. Dette fremhæver ofte den værdi eller det særlige tegn, som Power Query ikke kan fortolke som et tal. Hvis en kolonne indeholder både tekst og tal, skal du opdele den i separate kolonner og derefter anvende den korrekte datatype på den numeriske kolonne.
Hvorfor tillader excel mig ikke at konvertere til tal?
Excel tillader muligvis ikke, at du konverterer tal, der er gemt som tekst, til tal, hvis cellerne er formateret som 'Tekst', eller hvis de indeholder usynlige tegn som ikke-afbrydende mellemrum eller specielle symboler. Hvis nogen af de berørte celler flettes, kan Excel muligvis begrænse visse handlinger som talkonvertering. Fjern fletningen af cellerne, før du forsøger at konvertere.
Læs næste: .