Inhoudsopgave
CSV niet correct geopend in Excel? De handleiding onderzoekt typische problemen en biedt de meest effectieve oplossingen.
Het CSV-formaat wordt gewoonlijk gebruikt voor het importeren/exporteren van gegevens tussen verschillende spreadsheetprogramma's. De naam CSV (comma separated values) impliceert het gebruik van een komma om gegevensvelden te scheiden. Maar dat is in theorie. In de praktijk scheiden veel zogenaamde CSV-bestanden gegevens met behulp van andere tekens, zoals puntkomma of tabs. Sommige implementaties sluiten gegevensvelden in met enkele of dubbele aanhalingstekens, terwijlAndere vereisen een Unicode byte order mark (BOM), bijvoorbeeld UTF-8, voor een correcte Unicode interpretatie. Het ontbreken van een standaard leidt tot verschillende problemen bij CSV naar Excel conversies.
CSV-bestand opent in één kolom in Excel
Symptomen Bij het openen van een csv-bestand in Excel verschijnen alle gegevens in een enkele kolom.
Oorzaak Om gegevens in kolommen te splitsen, gebruikt Excel het scheidingsteken dat is ingesteld in uw Regionale instellingen van Windows. Dit kan een komma zijn (in Noord-Amerika en sommige andere landen) of een puntkomma (in Europese landen). Wanneer het scheidingsteken dat wordt gebruikt in een bepaald .csv-bestand afwijkt van het standaard scheidingsteken, wordt dat bestand geopend in één kolom.
Oplossingen Er zijn verschillende mogelijke oplossingen voor dit geval, waaronder VBA-macro's of een globale wijziging van de Windows-instellingen. Wij laten zien hoe u het probleem snel kunt oplossen zonder de standaard lijstscheidingsteken op uw computer te wijzigen, zodat geen van uw toepassingen wordt beïnvloed.
Scheidingsteken in CSV-bestand wijzigen
Om Excel in staat te stellen CSV met een ander scheidingsteken te lezen, kunt u het scheidingsteken rechtstreeks in dat bestand definiëren. Om dat te doen, opent u het bestand met een willekeurige teksteditor (Notepad voldoet prima) en voegt u de onderstaande tekst toe op de eerste regel. Let op, het moet een aparte regel zijn vóór alle andere gegevens:
- Scheiden met een komma: sep=,
- Scheiden met puntkomma: sep=;
Op dezelfde manier kunt u elk ander aangepast scheidingsteken instellen - typ het gewoon na het gelijkheidsteken.
Met een passend scheidingsteken gedefinieerd, kunt u het bestand nu op de gebruikelijke manier openen, vanuit Excel zelf of vanuit Windows Verkenner.
Scheidingsteken opgeven bij het importeren van CSV-bestand naar Excel
In plaats van een csv-bestand in Excel te openen, importeert u het met de wizard Tekst importeren (in alle versies) of Power Query (in Excel 365 - 2016).
De wizard voor het importeren van tekst ( Gegevens tab> Van tekst ) biedt een paar keuzes voor scheidingstekens in stap 2. Over het algemeen zou u kiezen voor:
- Komma voor bestanden met door komma's gescheiden waarden
- Tab voor tekstbestanden
- Puntkomma voor bestanden met puntkomma-gescheiden waarden
Als u niet zeker weet welk scheidingsteken uw gegevens bevatten, probeer dan verschillende scheidingstekens en kijk welke goed werkt in het Gegevensvoorbeeld.
Bij het maken van een Power Query-verbinding kunt u het scheidingsteken kiezen in het dialoogvenster Voorbeeld:
Zie voor de gedetailleerde stap-voor-stap instructies de hierboven gelinkte voorbeelden.
Cellen splitsen met de functie Tekst naar kolommen
Indien uw gegevens reeds naar Excel zijn overgebracht, kunt u ze scheiden in verschillende kolommen door gebruik te maken van de optie Tekst naar kolommen In wezen werkt het zoals de Tekst Import Wizard: u selecteert een scheidingsteken en Gegevensvoorbeeld weerspiegelt de veranderingen op de vlieg:
Voor volledige details, zie Cellen splitsen in Excel.
Hoe voorloopnullen behouden in Excel CSV
Symptomen. Sommige waarden in uw csv-bestand bevatten voorloopnullen. Wanneer het bestand in Excel wordt geopend, gaan de voorloopnullen verloren.
Oorzaak Standaard converteert Microsoft Excel csv-bestanden naar het Algemeen formaat dat voorloopnullen weglaat.
Oplossing In plaats van te openen, importeert u uw CSV naar Excel en selecteert u de Tekst formaat voor problematische kolommen.
Wizard tekstimport gebruiken
Om te beginnen Wizard tekst importeren automatisch, verander de bestandsextensie van .csv in .txt, en open vervolgens het tekstbestand vanuit Excel. Of schakel de functie Van tekst (legacy) in, en begin met het importeren van CSV naar Excel.
Selecteer in stap 3 van de wizard de kolom met waarden met voorloopnullen en wijzig het formaat ervan in Tekst Dit importeert de waarden als tekststrings met behoud van alle voorloopnullen.
Power Query gebruiken
Als u liever een csv-bestand in Excel importeert door er verbinding mee te maken, zijn er twee manieren om voorloopnullen te behouden.
Methode 1: Importeer alle gegevens in tekstformaat
In het voorbeelddialoogvenster, onder Gegevenstype Detectie kies Datatypes niet detecteren De inhoud van uw csv-bestand wordt in Excel geladen als tekst, en alle voorloopnullen blijven behouden.
Opmerking: deze methode werkt prima als uw bestand alleen bestaat uit tekst gegevens. Als er verschillende soorten waarden zijn, gebruik dan methode 2 om voor elke kolom afzonderlijk een passend formaat te definiëren.
Methode 2: Formaat instellen voor elke kolom
Wanneer uw csv-bestand verschillende soorten gegevens bevat, zoals tekst, getallen, valuta, data en tijden, kunt u expliciet aangeven welk formaat moet worden gebruikt voor elke specifieke kolom.
- Klik onder het gegevensvoorbeeld op Gegevens omzetten .
- Selecteer in de Power Query Editor de kolom waarin u voorafgaande nullen wilt behouden en klik op Gegevenstype > Tekst .
- Close & Load - dit laadt de resultaten naar een nieuw blad in de huidige werkmap.
- Close & Load Naar... - hiermee bepaalt u waar de resultaten worden geladen.
Tip. Deze methoden kunnen ook andere manipulaties met uw gegevens voorkomen die Excel automatisch probeert uit te voeren. Bijvoorbeeld, als de geïmporteerde gegevens beginnen met "=", zal Excel proberen deze te berekenen. Door toepassing van het Tekst formaat, geeft u aan dat de waarden tekenreeksen zijn, geen formules.
Hoe CSV-datumformaatproblemen in Excel op te lossen
Symptomen. Na conversie van CSV naar Excel worden data verkeerd geformatteerd, dagen en maanden worden verwisseld, sommige data worden veranderd in tekst, en sommige tekstwaarden worden automatisch geformatteerd als data.
Oorzaak In uw csv-bestand worden datums geschreven in een formaat dat afwijkt van het standaard datumformaat dat is ingesteld in uw besturingssysteem, waardoor Excel de datums niet correct interpreteert.
Oplossing Afhankelijk van het probleem waarmee u wordt geconfronteerd, kunt u een van de volgende oplossingen proberen.
Dagen en maanden lopen door elkaar
Wanneer de datumformaten in de regionale instellingen van Windows en het csv-bestand verschillend zijn, is er geen manier voor Excel om te bepalen dat mm/dd/jjj data die het zoekt worden opgeslagen in de dd/mm/jj Als gevolg daarvan zijn de dag- en maandeenheden omgekeerd: Jan-3 wordt Mar-1 , Jan-10 wordt Okt-1 enzovoort. Bovendien zijn de data na jan-12 worden omgezet in tekststrings omdat er geen 13e, 14e, enz. maanden bestaan.
Om de data correct te importeren, voert u de wizard Tekst importeren uit en kiest u de juiste Datum formaat in stap 3:
Sommige waarden worden omgezet in data
Microsoft Excel is ontworpen om het invoeren van verschillende soorten waarden te vergemakkelijken. Daarom, als Excel gelooft dat een bepaalde waarde een datum vertegenwoordigt, wordt deze automatisch geformatteerd als een datum. Bijvoorbeeld, de tekststring apr23 lijkt erg op 23 april en 11/3 lijkt op 3 november dus worden beide waarden omgezet in data.
Om te voorkomen dat Excel tekstwaarden verandert in data, gebruikt u de reeds bekende aanpak: zet CSV om naar Excel door het te importeren. In stap 3 van de Wizard tekst importeren selecteer de problematische kolom en verander het formaat in Tekst .
Data zijn verkeerd geformatteerd
Wanneer een csv-bestand wordt geopend in Excel, worden de data normaal gesproken weergegeven in het standaardformaat. In uw oorspronkelijke bestand kan bijvoorbeeld het volgende staan 7-mei-21 of 05/07/21 terwijl het in Excel verschijnt als 5/7/2021 .
Om data in het gewenste formaat weer te geven, maakt u gebruik van de Cellen opmaken functie:
- Selecteer de kolom met data.
- Druk op Ctrl + 1 om de Cellen opmaken dialoogvenster.
- Op de Nummer tabblad, kies Datum onder Categorie .
- Onder Type kies de gewenste opmaak.
- Klik op OK.
Als geen van de vooraf ingestelde formaten geschikt is voor u, dan kunt u uw eigen formaat maken zoals uitgelegd in Hoe maak ik een aangepast datumformaat in Excel.
Voorkomen dat Excel getallen omzet naar wetenschappelijke notatie
Symptomen. Na conversie van CSV naar Excel worden lange getallen geformatteerd als wetenschappelijke notatie, bv. 1234578900 verschijnt als 1,23E+09.
Oorzaak In Microsoft Excel zijn getallen beperkt tot 15 cijfers. Indien getallen in uw csv-bestand die limiet overschrijden, zet Excel ze automatisch om in wetenschappelijke notatie om aan die limiet te voldoen. Indien een getal meer dan 15 significante cijfers bevat, worden alle "extra" cijfers op het einde veranderd in nullen.
Oplossing Lange getallen importeren als tekst of het getalformaat rechtstreeks in Excel wijzigen.
Lange getallen importeren als tekst
Om grote getallen nauwkeurig van CSV naar Excel over te brengen, voert u het programma Wizard tekst importeren en stel het formaat van de doelkolom(pen) in op Tekst .
Dit is de enige echte oplossing om nauwkeurig in te voeren numerieke reeksen zonder gegevens te verliezen, d.w.z. zonder de 16e en volgende cijfers te vervangen door 0's of voorloopnullen te verwijderen. Het werkt uitstekend voor invoer zoals product-id's, rekeningnummers, streepjescodes en dergelijke.
Als uw waarden echter getallen zijn, geen strings, is dit niet de beste methode, omdat u geen wiskunde kunt toepassen op de resulterende tekstwaarden.
Met deze methode voorkomt u ook andere ongewenste automatische gegevensopmaak bij het converteren van een CSV-bestand.
Nummerweergave in Excel wijzigen
Als uw gegevens al in Excel staan, kunt u het formaat wijzigen van Algemeen om ofwel Tekst of Nummer zoals hieronder:
Opmerking: deze methode herstelt niet de verwijderde voorafgaande nullen of cijfers na de 15e positie die door nullen werden vervangen.
Voor meer informatie, zie Cellen opmaken in Excel.
Maak de kolom breder
In het eenvoudigste geval, wanneer een getal minder dan 15 cijfers bevat, is het voldoende een kolom iets breder te maken om de getallen normaal weer te geven.
Voor meer details, zie Hoe het formaat van kolommen wijzigen en automatisch aanpassen in Excel.
Dat is hoe u de meest voorkomende problemen kunt oplossen die zich kunnen voordoen bij CSV naar Excel conversies. Bedankt voor het lezen en tot volgende week!