Convert Any Spreadsheet to CSV Online
When a workbook becomes a flat text table: exact losses, import settings, and checks.
- Add a file Choose or drop it here
- Pick the format Change it whenever needed
- Download the result After conversion completes
A CSV Export Starts With a Flat Table, Whatever the Source Was
“Any to CSV” is not a conversion between equal file types. CSV is a text table. RFC 4180, published in 2005, describes a common form in which fields are separated by commas, records use CRLF, and the first record may be a header. It registers text/csv. The source might be an ODS package, an old XLS binary workbook, a modern XLSX file, a Numbers document, or a database report. Those source files can carry sheets and workbook instructions that CSV has no place to write.
That is why a valid export can be smaller and still incomplete for editing. The CSV represents selected row-and-column values, not the source program. The safest question is not “did it become a CSV?” but “which table, sheet, values, character encoding, and separator did the receiver expect?” A clear answer lets a flat exchange file do its job without pretending it is a backup of a workbook.
Flattening a Workbook Removes Its Instructions and Keeps Its Chosen Values
A workbook can have multiple sheets, formulas, cell formats, filters, charts, comments, names, validation lists, conditional formatting, and print settings. CSV has none of these structures. LibreOffice says that, when a spreadsheet is exported as CSV, only the current sheet is saved and all other information including formulas and formatting is lost. Microsoft gives the same practical warning for CSV: it saves displayed text and values from the active worksheet, while formatting, graphics, objects, and other contents are lost.
Formula handling is especially important. A CSV can contain the characters that look like a formula, but it cannot carry a workbook calculation rule as an active spreadsheet formula. An export normally writes the current displayed result. A date may leave as formatted text rather than the underlying serial number; LibreOffice warns that its “save cell content as shown” setting can create values that are no longer recognized as numeric on later import. Decide whether the delivery needs display values or raw values before export, then document the choice.
Reasons a Deliberate CSV Export Can Still Be the Right Result
- Simple data transfer: a receiving database or script can read text rows without needing the source office suite.
- Reviewable output: separators and values can be inspected in a text editor before delivery.
- One intended table: choosing one sheet avoids accidentally sending hidden workbook material, but it must be stated clearly.
- Loss of calculation logic: formula results can travel, while formulas, links, and their recalculation behavior do not.
- Loss of presentation: number formats, colours, charts, and page setup cannot be reconstructed from the CSV later.
- Potential value changes: converting raw values to the displayed locale form can make a later importer treat numbers as text.
The Receiving Application Determines How a CSV Becomes Cells Again
CSV does not settle encoding. Microsoft says Excel opens UTF-8 CSV normally when it includes a byte-order mark. For UTF-8 without that marker, its documented route is Data, Get Data, From File, From Text/CSV, where the encoding can be selected. This is more reliable than assuming that a double-click will identify every text file correctly. State both the encoding and delimiter when handing off data, especially if letters outside basic English are present.
LibreOffice provides an import dialog where users choose separators and can set column formats. Its guidance says language changes how dates, times, and scientific notation are detected. A recipient in a comma-decimal locale may expect semicolons as field separators. Opening a comma-delimited export under that setting produces one column, which is an import-configuration problem rather than evidence that all data vanished. Import identifiers and ambiguous date strings as text; convert types only where the business meaning is known.
Export Bugs Are Often Quoting, Locale, or Formula-Safety Problems
RFC 4180 says a field containing a comma, a quote, or a line break should be surrounded by double quotes; a literal quote inside is doubled. Ignoring that rule shifts columns or creates a false record. A useful sample includes a comma in text, a quotation mark, a multiline note, a blank field, a leading-zero code, a long digit string, and a non-ASCII character. Compare that sample after opening it in the actual receiving application, not only in a text editor.
Public CSV downloads have a second concern. OWASP identifies CSV Injection: spreadsheet programs may treat a cell beginning with =, +, -, or @ as a formula. A field separator or quote can make a dangerous character become the beginning of a new cell, so source validation must understand CSV structure. OWASP also warns that Excel may remove common escaping after a save and reopen. Protect untrusted exports at the system that writes them, and do not mistake a visible apostrophe or quote in a one-time test for a permanent defence.
A Pre-Export Comparison That Makes “Any to CSV” Testable
| Source feature | What reaches CSV | Verification |
|---|---|---|
| Several worksheets | One selected table or sheet | Name the exported sheet |
| Formula | Usually displayed result | Compare totals and raw value policy |
| Comma in text | Quoted field required | Check column count after import |
| UTF-8 text | Bytes need an encoding choice | Use Excel import or BOM as required |
| Leading-zero ID | Text, unless receiver guesses number | Set target column to Text |
| Charts and formatting | Not represented | Keep the workbook original |
Questions People Ask When Turning a Workbook into CSV
Why did only one sheet appear in my CSV?
CSV represents one flat table. LibreOffice explicitly exports only the current sheet, so create one CSV per required sheet and label them.
Can I export formulas to CSV?
Not as working formulas. Decide whether the recipient needs the calculated values or the original workbook with formulas intact.
Why did my decimal values stop being numbers?
A locale-specific displayed format may not match the importer’s decimal rules. Export raw values where available and set the locale during import.
Why are some rows split in the wrong place?
A comma, quote, or line break inside text was not handled as a quoted CSV field. Inspect the raw record and its doubled inner quotes.
Should I delete the workbook after export?
No. CSV cannot preserve its sheets, formulas, layout, charts, or validation. Keep the workbook as the editable source until the delivery is accepted.
Set a value policy before export. A source sheet may display a rounded currency amount, a local date, or a formula result while retaining a different raw value. LibreOffice warns that saving content as shown can create values a later import no longer treats as numeric. For machine exchange, use unambiguous raw values and document units. For a human report, displayed values may be right, but the locale and conventions must travel too. Count parsed records rather than physical lines: RFC 4180 allows a quoted field to contain a line break. Compare the selected source-sheet count, headers, last record, and meaningful totals after import.
When several sheets are required, make clearly named CSV files and state the source tab for each. CSV has no standard place to carry a worksheet name or another sheet. Also state whether filtered, hidden, or formula-result rows were included. Agree on comma, semicolon, tab, or another delimiter with the receiver before delivery; regional decimal rules can make a technically correct export open as one column elsewhere. The source workbook must remain available because later requests for a chart, formula, formatting rule, or second tab cannot be met from CSV.
A final check is not a visual glance at the first rows. Include a record with a comma, a quote, a blank, a multiline note, a leading-zero code, an accented character, and a long identifier in a known test set. Review it using the target application's import settings. This catches a quote-state or encoding error before it turns into a downstream database or accounting problem. It also gives a precise reason to change the export setting instead of manually repairing a damaged delivery copy.
Before publishing a CSV, review its header names as carefully as its values. Headers are often the only machine-readable label for a column, and a renamed, duplicated, or invisible leading-BOM header can break a downstream import. Use stable names, avoid relying on column position alone, and compare them byte-for-byte where a receiving system is strict. A conversion can have every value intact yet still fail because the first field name no longer matches the receiver's mapping.
A receiving system may also care about record order. CSV does not contain an instruction saying whether rows are sorted, grouped, or complete. If order has meaning, state the sort columns and include a stable record key. This matters when an export is later compared with another period or imported into a system that assumes a known sequence. A converter can preserve the bytes of a row while a reviewer still reaches the wrong conclusion if the ordering rule was never supplied.