Need to convert a CSV file to Excel format but not sure how? CSV is widely used for data exchange, but on its own it lacks formatting, formulas, and filtering capabilities. This guide covers every method for converting CSV to Excel (.xlsx) on both Windows and Mac.
CSV vs. Excel — Why Convert?
CSV and Excel (.xlsx) both handle tabular data, but they work very differently under the hood.
| Feature | CSV (.csv) | Excel (.xlsx) |
|---|---|---|
| Data format | Plain text (comma-delimited) | Binary (compressed XML) |
| Cell formatting | None | Per-cell formatting |
| Multiple sheets | Not supported | Supported |
| Formulas & functions | Not supported | Supported |
| Charts & shapes | Not supported | Supported |
| Filters & sorting | Not supported | Supported |
| File size | Smaller | Larger |
CSV's simplicity means any software can read it. But for data analysis and processing, you need the formatting and functionality that come with Excel format.
Exporting a CSV from a business system or web service and then analyzing it in Excel is an extremely common workflow — knowing how to convert properly saves significant time.
5 Ways to Convert CSV to Excel
Method 1: Use an Online Converter (Easiest)
Free Tool
CSV to Excel Converter
Convert CSV files to Excel (.xlsx) format. No character encoding issues, with auto column width.
Try it now →With sakutto's CSV to Excel converter, upload a CSV and get an xlsx file in seconds.
- Drag and drop your CSV file to upload it
- Verify the data loaded correctly in the preview
- Click "Convert" to download the xlsx file
No software installation needed — works on Windows, Mac, and smartphones. The file is processed entirely in your browser and is never sent to a server.
Method 2: Open in Excel and "Save As" (Windows)
The simplest approach, though it carries a risk of formatting issues.
- Double-click the CSV file to open it in Excel
- Go to "File" → "Save As"
- Change the file type to "Excel Workbook (*.xlsx)"
- Choose a save location and click "Save"
While quick and easy, Excel's automatic data type detection may strip leading zeros from phone numbers or convert values into dates. For data accuracy, Method 1 or Method 3 is recommended.
Method 3: Import via "From Text/CSV" (Prevents Formatting Issues)
Excel 2016 and later provides fine-grained control over data types through Power Query.
- Open a blank workbook in Excel (do not double-click the CSV)
- Go to "Data" tab → "From Text/CSV"
- Select the target CSV file
- Verify the delimiter (comma) and encoding in the preview
- Click "Transform Data" to open the Power Query Editor
- Change the data type of columns with leading zeros to "Text"
- Click "Close & Load"
This method lets you specify data types per column, reliably preventing zero-dropping and date misinterpretation. After loading, use "Save As" to save in xlsx format.
Method 4: Convert on Mac
Mac users have these options:
With Excel installed:
- Right-click the CSV → "Open With" → "Microsoft Excel"
- "File" → "Save As" → Change format to "Excel Workbook (.xlsx)"
- Save
Without Excel (via Numbers):
- Open the CSV file in Numbers
- "File" → "Export To" → "Excel"
- Confirm xlsx format in "Advanced Options" and click "Save"
Numbers is free, making it a viable alternative when you don't have an Excel license.
Method 5: Convert with Google Sheets (No Excel Required)
Convert CSV to xlsx in the browser without any software:
- Go to Google Drive
- Upload the CSV file
- Double-click the uploaded CSV to open in Google Sheets
- "File" → "Download" → "Microsoft Excel (.xlsx)"
Free for anyone with a Google account, though very large CSVs (tens of thousands of rows) may load slowly.
Free Tool
CSV to Excel Converter
Convert CSV files to Excel (.xlsx) format. No character encoding issues, with auto column width.
Try it now →How to Batch-Convert Multiple CSV Files
In business settings, you often need to convert an entire folder of CSVs at once. Here are several automated approaches.
VBA Macro
An Excel VBA macro can automatically convert every CSV in a folder to xlsx.
- Open Excel and press Alt + F11 to launch the VBA Editor
- Go to "Insert" → "Module"
- Paste and run the following macro:
Sub ConvertCsvToXlsx()
Dim folderPath As String
Dim fileName As String
Dim wb As Workbook
With Application.FileDialog(msoFileDialogFolderPicker)
If .Show = -1 Then
folderPath = .SelectedItems(1) & "\"
Else
Exit Sub
End If
End With
Application.ScreenUpdating = False
fileName = Dir(folderPath & "*.csv")
Do While fileName <> ""
Set wb = Workbooks.Open(folderPath & fileName)
wb.SaveAs folderPath & Replace(fileName, ".csv", ".xlsx"), xlOpenXMLWorkbook
wb.Close False
fileName = Dir
Loop
Application.ScreenUpdating = True
MsgBox "Conversion complete"
End Sub
A folder picker dialog appears — just select the folder containing your CSVs.
PowerShell (Windows)
Convert from the command line without Excel:
# Install ImportExcel module (first time only)
Install-Module ImportExcel -Scope CurrentUser
# Convert all CSVs in a folder to xlsx
Get-ChildItem -Path "C:\data" -Filter "*.csv" | ForEach-Object {
Import-Csv $_.FullName | Export-Excel -Path ($_.FullName -replace '\.csv$', '.xlsx')
}
The ImportExcel module works even without Excel installed.
Python
Using pandas and openpyxl:
import pandas as pd
from pathlib import Path
csv_folder = Path("./csv_files")
for csv_file in csv_folder.glob("*.csv"):
df = pd.read_csv(csv_file, dtype=str) # Read all columns as text
df.to_excel(csv_file.with_suffix(".xlsx"), index=False)
print(f"Converted: {csv_file.name}")
Specifying dtype=str prevents leading zeros from being stripped during the read step.
Common Issues During CSV to Excel Conversion
Garbled Characters
If the CSV's character encoding (UTF-8 / Shift_JIS) does not match Excel's import setting, text will be garbled. The simplest fix is converting the encoding with sakutto's CSV Encoding Converter before opening.
Leading Zeros Disappear / Values Turn into Dates
Excel's automatic data conversion is the culprit. Avoid double-clicking the CSV — use a conversion tool or Power Query import instead.
Comma Delimiters Not Recognized
If the CSV uses tabs or semicolons as delimiters, Excel cannot parse it as comma-separated. Select the correct delimiter in the Power Query import preview.
Frequently Asked Questions (FAQ)
Is "opening" a CSV in Excel the same as "converting" it?
No. Simply opening a CSV in Excel keeps the file in CSV format — any formatting or formulas you add will be lost on save. "Converting" (saving as xlsx) preserves all Excel-specific features.
Can I convert CSV to xlsx without Excel?
Yes. sakutto's CSV to Excel converter runs in the browser and requires no software. Google Sheets, PowerShell, and Python are also viable options.
Which encoding should I choose for my CSV?
For opening in Excel on Japanese-language Windows, Shift_JIS (CP932) is the most compatible. For sharing with other applications or web services, UTF-8 (with BOM) is recommended.
Can I convert very large CSV files?
sakutto's converter handles typical business data (up to tens of thousands of rows) without issue. For files exceeding hundreds of thousands of rows, PowerShell or Python batch conversion is more suitable.
Is my file sent to a server?
No. sakutto's CSV to Excel conversion runs entirely in your browser. Files are never uploaded to any external server, making it safe for personal and confidential data.
Summary
There are multiple ways to convert CSV to Excel, and the best method depends on your environment and needs. For the quickest approach, sakutto's online converter handles everything in the browser with no installation. To prevent formatting issues, use Power Query import. For batch processing, VBA macros or PowerShell scripts are the most efficient.
Free Tool
CSV to Excel Converter
Convert CSV files to Excel (.xlsx) format. No character encoding issues, with auto column width.
Try it now →