Why Your CSV Opens Wrong in Excel
Last updated 19 August 2026 · about 5 minutes to read
Everything in one column, accented characters as garbage, dates where product codes should be. Three causes and the fix for each.
A CSV that opens as one column, or shows é where é should be, or turns a product code into a date, is almost never a broken file. It is a correct file being read with the wrong assumptions.
Everything is in one column
Excel splits a CSV on the list separator from your Windows regional settings, not on the comma. In most of Europe the decimal separator is a comma, so the list separator is a semicolon, and a comma-separated file opens unsplit.
Three fixes, in order of how permanent they are. Use Data then From Text or Get Data and choose the delimiter in the import dialog, which affects this file only. Or add a line reading sep=, as the very first line of the file, which Excel honours and every other tool ignores as a stray row. Or change the list separator in Windows regional settings, which affects everything you open from then on.
Accented characters are garbage
You are seeing a UTF-8 file being read as a single-byte code page. In UTF-8, é is two bytes. Read one byte at a time under Windows-1252 those two bytes are à and ©, which is exactly what you see on screen.
The fix is a byte order mark: three bytes at the very start of the file that mean nothing except this is UTF-8. Excel looks for them, and finding them switches its decoding. Every CSV exporter aimed at Excel should offer this as an option, and Tablizer has it as a checkbox in the CSV output settings.
If the file already has damage in it, meaning you can see the replacement character U+FFFD, the bytes are gone and no setting will bring them back. Re-export from the source.
Excel changed my values
This is the one that costs people real work, because it happens silently and looks like the file was always that way.
- Product codes that look like dates. A value of 3-5 becomes 3 May. SEPT1 becomes a date in some locales. This is why a group of geneticists renamed several genes in 2020: Excel kept turning SEPT2 into a date and the renaming was easier than fixing every spreadsheet.
- Leading zeros stripped. 007 becomes 7 the moment the column is read as numeric.
- Long numbers truncated. Anything past fifteen significant digits loses its tail, and the last digits become zeros.
- Fractions read as dates. 1/2 becomes 2 January.
All four have the same cause and the same fix. Excel guesses a type per column on import, and the guess is wrong for identifiers. Use Data then From Text, and in the import wizard mark those columns as Text before the data lands in the sheet. Double-clicking the file skips the wizard entirely, which is why it is the one thing not to do.
How to check without opening Excel
Open the file in a text editor, or in a CSV viewer that treats every value as text. What is on those lines is what is in the file. Anything different on screen in a spreadsheet is the spreadsheet's interpretation, not the data.