Skip to content
ToolSolvo
Illustration of a CSV text file and an Excel worksheet with arrows in both directions: choosing the separator, UTF-8 and the byte-order mark, and keeping leading zeros.

Guide

How to Convert CSV to Excel and Excel to CSV (and What Changes)

CSV and Excel files often hold the same table, but they are very different files. A CSV file is plain text with the values of one sheet; an Excel workbook can hold many sheets, formulas and formatting. This guide covers both directions separately, with what changes in each and how to fix the usual problems: one long column, odd characters and missing zeros.

Published

What a CSV file holds

CSV stands for comma-separated values. Each line of the file is one row, and the cells in it are separated by a comma. A cell that itself contains a comma, a quote or a line break is wrapped in double quotes, and a quote inside it is written twice1. For example:

  • id,name,phone
  • 0012,"Khan, Ayesha",03001234567

That is all a CSV file can store: text, row by row. There are no sheets, fonts, colours, formulas or number formats, and nothing in the file says whether 0012 is a number or a code. Some programs use a semicolon, tab or pipe instead of a comma, especially in countries where the comma is the decimal point.

CSV to Excel, step by step

  1. Open the Excel and CSV Converter and choose CSV to Excel.
  2. Add your .csv file (up to 50 MB). The tool reads it in your browser and shows “Separator found:” with the separator it detected.
  3. If the preview shows everything in one column, choose another Separator: Comma, Semicolon, Tab or Pipe.
  4. Under Numbers, keep Plain numbers become numbers, or choose Keep every cell as text to keep every value exactly as written.
  5. Read the notes under the preview, then click Create Excel workbook and download the .xlsx file. It has one sheet, named after the CSV file.

Numbers or text: what the two settings do

With Plain numbers become numbers, values such as 42 or -3.25 become numbers you can add up. Anything that might lose information as a number stays text: leading zeros (0012), trailing zeros (1.50), thousands separators (1,250), dates, phone numbers and long IDs. With Keep every cell as text, nothing is converted; Excel may then mark number-like cells with a small green triangle, which you can ignore.

How a sample customers.csv came out in Excel with Plain numbers become numbers (one test, 1 October 2026)
In the CSVIn the Excel cell
00120012, as text
03001234567 and +923331112222Unchanged, as text
2026-03-01 and 01/04/2026Unchanged, as text
1250 and -3.25Numbers
1.501.50, as text
"Khan, Ayesha"Khan, Ayesha, in one cell
A quoted cell with a line breakOne cell with the line break kept
=SUM(A1:A2) and @mentionText, shown exactly as written, not run as formulas

The tool summed this up as “4 rows and 6 columns: 2 numbers and 21 text cells”, and added two notes: that 3 cells start with =, +, - or @ and are stored as text, and that 1 cell has line breaks (turn on Wrap Text in Excel to see them).

Excel to CSV, step by step

  1. In the same tool, choose Excel to CSV and add an .xlsx workbook (up to 50 MB).
  2. Pick the sheet in Worksheet. Hidden sheets are listed with “(hidden)” after their name; chart sheets have no cells and are not listed.
  3. Choose the Separator. Use Comma unless the program that will read the file expects something else.
  4. Under Options, decide on Add a byte-order mark (UTF-8 BOM), which is on by default, and Protect formula-like text (explained below).
  5. Check the preview and the list under Before you download, then download. The file is named after the workbook and sheet, for example workbook - Sales.csv.

For another sheet, choose it in Worksheet and download again: each CSV file holds one sheet.

What the notes told us

We converted a two-sheet test workbook (Sales and Notes) with formulas, a percentage, dates, a merged cell and two text cells starting with = and +. For the Sales sheet, “Before you download” listed:

  • Only the sheet “Sales” is included, and 1 other sheet is left out.
  • Formatting, colours, column widths, charts, images and comments are not kept.
  • 3 formulas: their last saved results are written. One formula had no saved result, so that cell was empty in the CSV.
  • 2 dates are written as YYYY-MM-DD, and 2 formatted numbers as their stored value: 25% became 0.25.
  • The merged range kept its value in the first cell only.

The default download used commas, began with a UTF-8 byte-order mark, and wrote =not a formula unchanged. With Semicolon chosen, the BOM turned off and Protect formula-like text turned on, the same cells became '=not a formula and '+92 300.

What changes between the two formats

What happens to each part of a workbook in ToolSolvo’s Excel and CSV Converter
Part of the tableExcel to CSVCSV to Excel
SheetsOne sheet per CSV file; the others are left outOne sheet, named after the file
FormulasThe last saved result; never runText starting with = stays text
Formatting, column widths, coloursNot keptNone to bring over; add it in Excel
Dates and timesWritten as YYYY-MM-DD and HH:MM:SSKept as text, exactly as written
Percentages, currency, thousands separatorsStored value only (25% becomes 0.25)Kept as text
Leading zerosKept if the cell was text in ExcelKept, as text
Merged cellsValue in the first cell onlyNone to bring over
Line breaks inside a cellKept, inside quotesKept in one cell

A worksheet can hold up to 1,048,576 rows and 16,384 columns, and 32,767 characters in a cell2. The converter accepts files with up to 2 million cells and tells you if a cell is too long for Excel.

Troubleshooting: separators, encoding, leading zeros

Everything is in one column

The file uses a different separator from the one being applied. In CSV to Excel, choose another Separator and watch the preview split into columns. When writing a CSV for someone else, ask which separator their program expects; spreadsheet apps set to a region that uses a decimal comma often expect a semicolon.

Decimal commas stay as text

In our semicolon test file, “1,25” and “0,99” were kept as text, so nothing was misread as 125 or 1.25. To calculate with them, replace the commas with full stops in that column (Find and Replace), and Excel will treat them as numbers.

Accented letters or Urdu text look wrong

  • CSV to Excel: the tool expects UTF-8. A file saved in the older Western European encoding was read too, with the note “This file is not UTF-8, so it was read as Windows-1252”; in our test, José and Montréal came through correctly. If the preview still shows odd characters, save the file as “CSV UTF-8” in the program that made it and try again.
  • Excel to CSV: keep Add a byte-order mark (UTF-8 BOM) on if the CSV will be opened in Excel. Microsoft notes that a UTF-8 file without a BOM may show garbled characters when opened by double-clicking, and recommends importing it with Data › Get Data › From Text/CSV instead3. Turn the BOM off only if another program shows odd characters at the start of the file.

Leading zeros or long numbers disappeared

This usually happens when a CSV is opened in Excel by double-clicking. Recent versions of Excel can remove leading zeros, cut numbers to 15 digits and turn values such as JAN1 into dates as they open a CSV; Microsoft documents these automatic data conversions and how to switch them off in Excel’s options4. Converting with CSV to Excel avoids this, because codes, phone numbers and long IDs are written into the workbook as text. In the other direction, a leading zero only survives in the CSV if the cell held text in Excel.

A formula cell is empty in the CSV

The workbook was saved without calculated results, which some programs do. Open it in Excel, let it calculate, save it, and convert again.

The workbook is not accepted

Only .xlsx workbooks and .csv files are read. Older .xls files, macro-enabled .xlsm, binary .xlsb and password-protected workbooks need to be saved as an Excel Workbook (.xlsx) without a password first.

Text that starts with = or +

A spreadsheet app can treat a CSV cell that starts with =, +, - or @ as a formula when it opens the file. Usually that just shows an error, but formulas planted in exported data can be misused, which OWASP calls CSV injection; its suggested defence is to put a single quote in front of such cells5.

  • ToolSolvo never runs formulas in either direction. In CSV to Excel, such cells are stored as text.
  • In Excel to CSV, Protect formula-like text adds the quote for you. It changes those cells, so leave it off when the file feeds a system that needs the exact values, such as phone numbers starting with + or values starting with -.

Common questions

Can I convert a whole workbook with several sheets to CSV?

Not into one file: a CSV file holds one sheet. Convert each sheet in turn by choosing it in Worksheet and downloading again.

Will my CSV open the same way in Google Sheets or LibreOffice?

The text in the file is the same, but each program applies its own rules to dates and numbers when it opens a CSV. If codes, dates and IDs must stay exactly as written, convert the CSV to .xlsx first, where they are stored as text.

How do I get a table out of a PDF instead?

Use PDF to Excel. The PDF to Excel guide explains which PDFs convert well.

Sources

  1. IETF RFC 4180: Common Format and MIME Type for Comma-Separated Values (CSV) Files — An informational description of CSV: one record per line, fields with commas, quotes or line breaks enclosed in double quotes, and quotes inside fields doubled.
  2. Microsoft Support: Excel specifications and limits — 1,048,576 rows by 16,384 columns per worksheet, and 32,767 characters per cell.
  3. Microsoft Support: Opening CSV UTF-8 files correctly in Excel — UTF-8 CSV files without a BOM may display incorrectly when opened directly; import them with Data › Get Data › From Text/CSV.
  4. Microsoft Support: Set automatic data conversions — Excel can remove leading zeros, keep 15 digits of precision and convert some text to dates when opening a CSV file; these conversions can be turned off in Excel’s options.
  5. OWASP: CSV Injection — Cells starting with =, +, -, @, tab or carriage return can be interpreted as formulas; prefixing a single quote makes them read as text.

Tools mentioned in this guide