Updated 2026-10-05 · By Sergi (spnfury)
Double-clicking a CSV is the fastest way to ruin it. Excel decides the separator from your Windows regional settings, guesses the encoding, converts anything that looks like a number or a date, and drops leading zeros. The file on disk is fine; it is Excel's interpretation that breaks.
This guide explains each symptom, why it happens, and the fix that keeps your data intact. The last section shows how to avoid the problem entirely by converting the CSV to a real .xlsx file before opening it.
Excel splits columns using the "list separator" from the operating system's regional settings. In the United States and the United Kingdom that is a comma; in Spain, France, Germany, Italy, Portugal, the Netherlands and most of continental Europe it is a semicolon, because the comma is already the decimal separator. A comma-separated file opened on a European Excel therefore shows one long line per row.
Fix A: use the import wizard. In Excel go to Data > Get Data > From Text/CSV (or Data > From Text in older versions), select the file, and in the preview choose Comma as the delimiter. Excel then splits the columns correctly regardless of regional settings.
Fix B: add a hint at the top of the file. If the first line of the CSV is sep=, Excel uses the comma as separator when double-clicking. This works but the line will confuse any other program that reads the file.
Fix C: convert the separator to a semicolon with the CSV to Delimited tool, so double-click just works on a European Excel.
Excel treats any cell that looks like a number as a number, and a number does not have leading zeros. ZIP codes, phone numbers, account numbers and product codes lose their zeros the moment the file opens, and saving overwrites the original.
Fix: in the import wizard, after choosing the delimiter, click Transform Data (Power Query) or, in the legacy wizard, select the column and set its type to Text. Alternatively, convert the CSV to .xlsx with a tool that stores those values as text; CSV Creator's CSV to Excel does this automatically for any value starting with a zero.
Most CSV files are UTF-8, but when you double-click, Excel assumes the legacy Windows encoding (Windows-1252) unless the file starts with a byte order mark (BOM). Characters outside ASCII then appear as é or similar.
Fix: in the import wizard, set File Origin to 65001: Unicode (UTF-8). If you produce the CSV yourself, save it as UTF-8 with BOM: Excel detects the mark and decodes correctly. The Excel to CSV tool on this site adds the BOM by default for that reason.
A value like 1/2 becomes 1-Feb, 3-4 becomes 4-Mar, 1E3 becomes 1000 and a 16-digit number becomes 1.23457E+15 with the last digits replaced by zeros. These conversions are silent and permanent once saved.
Fix: the same as for leading zeros. Import through the wizard and set the affected columns to Text, or open a converted .xlsx where the values are already typed correctly.
Every symptom above comes from Excel guessing. A real .xlsx file does not need guessing: each cell has a type, text stays text, the encoding is fixed and there is no separator. Converting the CSV to XLSX once, with a tool that preserves leading zeros and reads UTF-8, removes the whole class of problems and gives you a file you can email to colleagues safely.
Because the file uses commas and your Excel expects the list separator of your regional settings, which is a semicolon in most of Europe. Open the file through Data > From Text/CSV and choose Comma, or convert the separator to semicolons first.
Import the file with Data > From Text/CSV and set the column type to Text before loading, or convert the CSV to .xlsx with a tool that stores codes as text. Double-clicking the file will always strip the zeros.
Use the import wizard and set File Origin to 65001 (UTF-8), or make sure the CSV starts with a UTF-8 byte order mark. Google Sheets and LibreOffice detect UTF-8 automatically.
No, it usually makes them permanent: Excel saves what it displayed, so lost zeros and converted dates are written to disk. Keep a copy of the original CSV and work on the imported or converted file.
Google Sheets detects the separator and the encoding automatically and asks before converting text to numbers, so it breaks fewer files. It still converts leading zeros unless you set the column format to plain text.