Excel til CSV uten ødelagte tegn: UTF-8, BOM og skilletegn
De fleste ødelagte aksenter i en CSV-fil skyldes en kodingskonflikt: filen er lagret som UTF-8, men åpnes med en Windows-koding. Eksporter arket som CSV UTF-8, med en byte order mark (BOM) hvis Excel er programmet som skal åpne filen, og velg skilletegnet som er vanlig i ditt språk- og regionoppsett. Før eksport bør du formatere kolonner som postnumre og telefonnumre som tekst, slik at nullene beholdes.
Excel til CSVTrenger CSV, har en Excel-filGjør det gratisHvorfor «é» blir til «Ã©»
Et tegn i en fil lagres som bytes. I UTF-8 består bokstaven é av to bytes, C3 og A9. Et program som leser disse bytene som Windows-1252, en vanlig Windows-koding, ser tegnet à for C3 og © for A9. Dermed vises «café» som «café». Du kan selv se dette: koder du é som UTF-8 og dekoder resultatet som Windows-1252, får du é. En ü, ñ eller ö ødelegges på samme måte.
Løsningen er ikke å redigere tegnene. Den er å fortelle programmet hvilken koding filen bruker.
UTF-8 og BOM
UTF-8 er standardkodingen for tekst på nettet og i de fleste moderne programmer. En vanlig CSV-fil har ingen felt som sier hvilken koding den bruker, så programmene må gjette. En byte order mark er tre bytes helt i begynnelsen av filen, EF BB BF, som signaliserer UTF-8 til programmer som ser etter den. Excel på Windows åpner ofte en UTF-8-fil uten BOM med sin lokale koding, så BOM er den vanlige løsningen.
I nyere versjoner av Excel tilbyr menyen Lagre som et alternativ for CSV UTF-8, som legger til BOM. Du kan også importere filen via Data, Fra tekst/CSV, og velge 65001, UTF-8, under Filopprinnelse. BOM har én ulempe: et program som ikke forventer den, kan behandle den som en del av navnet på første kolonne. De fleste parsere og regnearkprogrammer håndterer den, men hvis en dataimportør viser en merkelig overskrift, bør du fjerne BOM-en.
Komma eller semikolon
CSV betyr komma-separerte verdier, og RFC 4180-spesifikasjonen beskriver felt atskilt med komma. I mange land, inkludert de som bruker desimalkomma, som 1,5 for én og en halv, er listeseparatoren i Excel et semikolon. Når det skjer, kan en kommaseparert fil åpnet i Excel dele seg feil, og et tall som 1,5 blir til to felt.
Velg skilletegnet som målprogrammet forventer. Excel til CSV-verktøyet tilbyr komma, semikolon og tabulator. Hvis filen skal brukes i et program med desimalkomma, er semikolon som regel det tryggere valget.
Datoer blir til serienummer
Excel lagrer datoer som serienummer, der dagene telles fra et startpunkt. I datosystemet fra 1900 er 1. januar 1900 serienummer 1. Excel behandler også 1900 som et skuddår, så det teller med 29. februar 1900, som aldri eksisterte, som serienummer 60. Dermed blir 1. mars 1900 serienummer 61, og alle senere datoer forskyves med én dag. Feilen kom fra Lotus 1-2-3, og Microsoft har beholdt det samme systemet av hensyn til kompatibilitet. Annen programvare kan lese datoer før 1. mars 1900 én dag feil.
Når du eksporterer en dato, kan du se 44927 i stedet for 2023-01-01, eller en dag feil i gamle datoer. Verktøyet konverterer datoer til lesbar tekst. Hvis du eksporterer manuelt, formater datokolonnen som tekst i ISO-formen åååå-mm-dd, som alle programmer leser likt.
Ledende nuller forsvinner
Et postnummer som 02134 er tekst, men Excel behandler et skrevet tall som et tall, så det vises som 2134. Nullen er borte fra arket, og CSV-filen som skrives fra det, vil heller ikke ha den. Telefonnumre som begynner med 0, og lange ID-numre, rammes på samme måte. Svært lange tall kan også miste sifre, fordi Excel bare beholder rundt 15 signifikante siffer.
Løsningen er å lagre disse kolonnene som tekst før du skriver inn eller importerer dataene. Når du åpner en CSV-fil som allerede har nullene, bruker du Data, Fra tekst/CSV og setter kolonnen til Tekst, i stedet for å dobbeltklikke på filen.
Siteringsregler
RFC 4180 definerer det vanlige CSV-formatet. Hovedreglene for sitering er:
- Et felt som inneholder komma, dobbelt anførselstegn eller linjeskift, må omsluttes av doble anførselstegn.
- Et dobbelt anførselstegn inne i et sitert felt skrives som to dobbelte anførselstegn.
- Linjer avsluttes med CRLF i spesifikasjonen, selv om de fleste verktøy godtar LF.
For eksempel har raden "Müller, Anna","She said ""ok""" to felt: Müller, Anna og She said "ok". Den IANA-registrerte MIME-typen for CSV er text/csv.
RFC 4180 tillater ikke et dobbelt anførselstegn i et usitert felt, og mange parsere avviser en slik rad eller deler den feil. Sitér feltet riktig, eller fjern det løse tegnet.
Sjekkliste før eksport
- Eksporter som CSV UTF-8, med BOM hvis Excel skal åpne filen.
- Velg skilletegnet som målprogrammet forventer.
- Formater ID-lignende kolonner, som postnumre og telefonnumre, som tekst.
- Skriv datoer som åååå-mm-dd.
- Åpne filen i en enkel tekstredigerer og sjekk første linje og et utvalg av navn med aksenter.
Skjulte tegn, som hardt mellomrom, kan også gi importfeil. Fjern skjulte tegn finner og fjerner dem, og skjulte tegn i tekst forklarer hvor de kommer fra. Når filen er ren, kan CSV til JSON konvertere den for en utvikler, som beskrevet i CSV til JSON og tilbake.
Før du eksporterer, er selve cellene verdt en titt: Excel-formelsjekk lister formlene som viser en feil eller peker til en annen fil, og det er nettopp disse cellene som havner tomme i en CSV. Etter eksporten kan du bruke Sammenlign regneark for å se hva som endret seg mellom versjonene.
Raske svar
Hvorfor ser filen riktig ut i ett program og ødelagt i Excel? Når en UTF-8-fil mangler BOM, kan Excel på Windows lese den med sin lokale koding. Å legge til BOM, eller importere med UTF-8 valgt, løser det.
Trenger Mac-versjoner av Excel BOM? Noen kilder sier at de gjør det, så test med en fil som inneholder et navn med aksent før du sender den.
Kan jeg fikse datoene etter eksport? Ja, hvis de fortsatt er serienummer, men det er bedre å eksportere dem som åååå-mm-dd fra starten.
Blir regnearket mitt lastet opp når jeg konverterer det? Verktøyet kjører i nettleseren din, så filen behandles på din egen enhet. Du kan sjekke dette med veiledningen for opplastingssjekk.
Oversatt fra Engelsk original med KI-hjelp.
Kommentarer
Ingen kommentarer ennå. Bli den første.


