Excel turned my long numbers into 1.23E+15. Fix it.
You open a CSV of products, orders or contacts and the barcode column reads
4.00638E+12. The phone numbers say 7.91235E+10. The
long account IDs are the same story. If you save the file in that state, the
numbers you needed are gone.
in the CSV: 4006381333931 in Excel: 4.00638E+12
Why Excel does this
Excel treats any column of digits as a number. Numbers with more than about 11 digits don't fit in a default-width column, so General format switches to scientific notation for display. That part is only cosmetic: click the cell and the formula bar usually still shows the full value.
The part that is not cosmetic is precision. Excel stores numbers with 15
significant digits. Anything beyond the fifteenth digit is replaced with
zeros the moment Excel reads the cell, so a 16-digit card-style ID or a
long tracking number is already changed before you save. And if the file
itself contains 1.23457E+15 as text, the other digits were
thrown away by whoever saved it.
What you can and can't get back
- File not saved yet, 15 digits or fewer: fully recoverable. The data is still in the original CSV.
- Saved over the original, number was 15 digits or fewer:
the cell may still hold all the digits even though it displays as
E+. Format the column as Number with 0 decimals and look. - More than 15 digits, or the file itself contains
1.23457E+15: the missing digits are gone. Go back to the system that exported it, or an earlier copy.
The manual fix
Import the file instead of double-clicking it, and tell Excel the column is text:
- Open a blank workbook.
- Choose Data ▸ From Text/CSV and pick the file.
- In the preview, set Data Type Detection to Do not detect data types. Every column then loads as text and the digits stay exactly as written.
- Click Load.
To repair a column that already shows E+ but still has the
digits: select it, press Ctrl+1, choose
Number with 0 decimal places. In Google Sheets, import with
File ▸ Import and untick "Convert text to numbers,
dates, and formulas".
If an ID is never used for arithmetic, treat it as text for good. Phone numbers, barcodes, ZIP codes and account numbers are labels, not quantities.
How to tell which case you are in
Open the original CSV in a plain text editor such as Notepad. If you see
4006381333931 there, the file is fine and only Excel's display
is the problem. If you see 4.00638E+12, the file was already
damaged when it was written. Do this check before spending time on fixes.
It also explains a common surprise: two people open the same file, one sees
full numbers and the other sees E+, because one widened the
column or used the import route and the other double-clicked.
The same idea applies when you export from a database or a shop platform to CSV. If the export tool has a "treat as text" or "quote all fields" option, turn it on for ID columns.
If your file contains values like 1.2E+15 in the text itself
and they are whole numbers, drop it into CSV Fixer and turn on "Turn
1.2E+15 back into the full number." It shows a preview before anything
changes. It can only rewrite what is in the file: digits that were
already lost cannot be reconstructed. Your file never leaves your
browser.