← All guides
Guide by Arif Aslam 7 min read

Your Excel formulas vanished in the CSV. Here is exactly what a save discards.

You spent an afternoon building a model, saved it as CSV to send to someone, opened the CSV to check, and every formula is gone. Nothing malfunctioned. CSV is a text format for one table of values, and a workbook is not that.

What follows is a full accounting of what a Save As CSV discards, why each loss happens, and which ones you should actually care about. Some of them are worth mourning. Several are improvements.

Loss: formulas become their results

Cause. A cell containing =SUM(B2:B100) writes 4213.5 to the CSV. The expression lives in the workbook's XML; the CSV gets the last computed value. There is no syntax in CSV for an expression, so there is nowhere to put it.

Consequence. The file is now a snapshot. If the underlying numbers change, nothing recalculates, because there is no calculation any more. That is exactly what you want for a report you are archiving and exactly wrong for a template you expect someone to fill in.

Fix. Decide which of the two you are producing. If it is a snapshot of results, CSV is the right choice and the loss is intentional. If the recipient needs the logic, send XLSX. If the recipient needs to run the logic on new data every month, neither is right: the calculation should live in a pipeline that re-runs, not in a file that someone re-opens.

Fix it: rebuild the calculation as a pipeline you can re-run on next month's file →

Loss: every sheet but the active one

Cause. CSV holds one table. A workbook with a Data tab, a Lookup tab and a Summary tab has three, and Save As writes whichever one was in front when you hit save.

This is the loss that produces the most confused emails, because the CSV is not empty and not obviously wrong. It is just a different sheet from the one the recipient expected, usually the summary rather than the data.

Fix. Export each sheet you need as its own CSV, and name the files after the sheets. If the sheets are related through lookups, that relationship also does not survive, so you will need to re-join them on the other side. Our Excel to CSV converter shows you the sheet list and lets you pick, rather than silently taking whichever one Excel considered active.

Fix it: pick the sheet you want and convert just that one →

Loss: formatting, including number formats

Cause. Bold, fills, borders, column widths, conditional formatting, freeze panes: none of it exists in CSV. That is fine and mostly nobody misses it.

Number formats are the interesting case, because they change what gets written.

Cell shows Underlying value CSV usually gets
$1,234.501234.51234.5
45%0.450.45
3 Apr 202646115Formatted date text
1.23E+15Rounded doubleThe rounded value

The first two are improvements. A number without a currency symbol or a percent sign is easier for every downstream tool to handle, and the symbol was never data. The third is a trap: the date is written in the display format, which means an ambiguous format in the cell produces an ambiguous date in the file. The fourth is real damage that happened before the export, and the CSV faithfully records it.

Fix it: format date columns as ISO in the sheet before you export →

Loss: charts, comments, validation, named ranges

Cause. All of these are workbook features with no textual representation. Charts are drawings bound to ranges. Comments are annotations attached to cells. Data validation is a rule, not a value. Named ranges are references. None of them are rows and columns.

Consequence. The one that actually costs people is data validation. A column that was constrained to a dropdown of five values in the workbook is a free text column in the CSV, and the next person to fill it in will type whatever they like. If that file comes back to you, expect Yes, yes, Y and TRUE in the same column.

Fix. Validate on the way back in rather than trusting the way out. A profiler that lists distinct values per column finds the four spellings of yes in about two seconds, which is faster than any amount of instruction in an email.

Fix it: profile the returned file and see every distinct value per column →

Loss: error cells and merged cells, in their own special ways

Error values. A formula showing #N/A, #REF! or #DIV/0! writes that literal text into the CSV. So a numeric column can arrive with #N/A scattered through it, which forces the whole column to be read as text and makes every sum fail. Clean errors up before exporting, or wrap the formulas in IFERROR.

Merged cells. A merged cell writes its value into the first position and empty strings into the rest. That produces the very recognizable shape where a category name appears once and then five blank rows follow, which most people read as missing data. It is not missing; it is a layout that was never tabular.

The repair is a forward fill: every blank takes the value above it. In SQL that is a window function.

SELECT LAST_VALUE(NULLIF(TRIM(region), '') IGNORE NULLS)
         OVER (ORDER BY row_num
               ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS region,
       product, revenue
FROM data;

The IGNORE NULLS is the part that makes it work, and the NULLIF around TRIM is what turns an empty string into a real NULL so the fill sees it.

Fix it: fill missing values down the column in one operation →

Check what is really in the file

After any workbook to CSV export, do a three-point comparison against the original. It takes a minute and catches almost everything in this guide.

  • Row count. Does the CSV have the same number of data rows as the sheet? A merged header block or a filtered view can change this.
  • Column count. Trailing columns that were formatted but empty sometimes come along as extra empty fields.
  • One total. Sum a numeric column in both places. If they disagree, either an error value became text, or a formula was showing a stale result at save time.

That last check is the one I would never skip. It catches the whole class of problems where the CSV looks structurally perfect and is arithmetically wrong.

Fix it: diff the workbook against the exported file by key column →

Questions people actually ask

Can I get formulas back from a CSV?

No. A CSV stores the computed result, not the expression that produced it. If the workbook still exists, the formulas are there. If the workbook is gone, the logic has to be rewritten from what you know about the calculation.

Why did only one sheet get saved?

CSV is a single table format with no concept of a workbook. Save As CSV writes the active sheet and silently ignores every other one. Excel warns you, in a dialog that is easy to dismiss.

My currency column lost its symbol. Why?

The symbol was a display format applied to a number, not part of the value. CSV stores the value. This is usually a good thing: 1234.5 is easier to work with than $1,234.50, and the symbol belongs in the presentation layer.

Do CSV exports keep the results of formulas?

Yes, in the common case. The exported value is whatever the cell displayed at save time. If a formula was showing an error like #N/A, the CSV gets the literal text of that error instead of a value.

What is the right format if I need to keep formulas?

XLSX. It is a real workbook format, it keeps formulas, formatting, multiple sheets and everything else, and every spreadsheet application reads it. Use CSV only when the destination genuinely needs a flat table.

AA

Arif Aslam

Staff engineer in Bangalore. By day at Mammoth Analytics; building ExploreMyData on the side. More on my author page or LinkedIn.

Convert the sheet you actually want

Pick the sheet, get a clean CSV, and see the values that will land before you download.

Open the Excel to CSV converter