Excel to CSV
Split a workbook into one CSV per sheet, reading the file in this tab rather than uploading it.
What this tool does
Excel to CSV unzips the workbook package in the browser and reads the sheet XML directly: shared strings, inline strings, rich-text runs, booleans as TRUE and FALSE, and the cell styles that mark which numbers are meant to be dates. Every sheet becomes its own CSV by default, written with CRLF line endings and RFC-style quoting, so a cell containing your delimiter, a double quote or a line break is wrapped and its inner quotes doubled rather than breaking the row.
Naming follows the workbook. With more than one sheet in play, each sheet export is named accounts - Q1.csv after the file and the tab it came from, characters that filenames reject are replaced with spaces, and two tabs with the same name get a numbered suffix instead of overwriting each other. A workbook with a single sheet, or the first sheet only setting, produces one file named after the workbook alone. When more than one CSV comes back, each is listed with its own Save button and a single Download all as ZIP button sits underneath the list.
Date cells are the one value the converter rewrites. A cell whose number format says it is a date is turned into 2024-03-01, into 2024-03-01 09:30:00 when it carries a time, and into 09:30:00 when there is no date part; 1904-epoch workbooks are handled, as is Excel's belief in a 29 February 1900. Switch Date cells to raw Excel numbers and the underlying serial, 45352, comes through untouched for a pipeline that would rather do its own arithmetic.
Everything else is exported as stored rather than as displayed, and that is the limit to know before you rely on the output. CSV carries no number formats, so a cell showing £1,234.50 lands as 1234.5, a cell showing 12% lands as 0.12, and a figure rounded to two decimals on screen arrives at its full stored precision. Formulas are not carried across either: what you get is the result Excel cached when it last saved, and a cell written by a generator that stored no cached result comes out empty. Colours, fonts, borders, charts, images, comments and merged-cell spans have nowhere to go in a text file — the value in a merged block sits in its top-left cell and the rest of the block is blank. Nothing filters by visibility, so hidden sheets, rows and columns are exported like everything else, which is worth checking before you pass the files on.
How to use it
- Choose the workbooks. One .xlsx or .xlsm file, or several — each is read in turn and contributes its own CSVs to the results. Nothing is uploaded; the parsing happens in this tab.
- Decide how many sheets you want. Every sheet writes one CSV per tab. The first sheet only writes a single file, useful when a workbook carries twenty reference tabs you have no interest in.
- Choose how dates come out. ISO dates for anything a human or a database will read, raw Excel numbers when the receiving system expects serials and will convert them itself.
- Set the output delimiter. Four characters are on offer: a comma, a semicolon, a tab or a pipe. Semicolon fits the European convention where the comma is a decimal mark, and a tab keeps prose columns free of quote marks.
- Leave or lift Drop trailing empty rows. On by default, it removes the blank rows at the bottom that a formatted sheet leaves behind. Untick it when the exact row count matters more than tidiness.
Processing & privacy
Runs on your device. Your file is processed directly in this browser.
Common use cases
Loading a spreadsheet into a script
pandas, R, a COPY statement and most import endpoints read CSV without argument, where an .xlsx needs a parsing library first.
Pulling one tab out of a large workbook
A monthly report with a dozen tabs becomes a dozen named files, so the one you actually need can be handed on without the rest.
Tracking a sheet in version control
An .xlsx is a zip, so git records only that the binary changed. CSV is line-based, and a diff shows which rows and cells moved.
Feeding a system that wants semicolons
Some finance and government upload forms reject comma files outright. Setting the delimiter here avoids a round trip through a text editor.
Questions
Is my workbook uploaded?
Can it open .xls, .ods or Numbers files?
What happens to formulas?
Why do my currency and percentage cells look wrong?
Can I convert a workbook that asks for a password?
Are blank rows preserved?
Will Excel open the CSV with accents intact?
How large a workbook can it take?
Related tools
- JSON to CSV — Flatten a JSON array into a CSV table.
- CSV to JSON — Turn a CSV file into structured JSON.
- CSV Viewer — Open and browse a large CSV without a spreadsheet app.
- CSV to Excel — Convert CSV files into an XLSX workbook.
- CSV Merge — Combine multiple CSV files with matching columns.
- CSV Split — Split a large CSV into smaller chunks.