How to Change the Default Character Encoding in Excel (Advanced Guide)|Prevent CSV Garbled Text with UTF-8 Support
Contents
- How to Change the Default Character Encoding in Excel (Advanced Guide)|Prevent CSV Garbled Text with UTF-8 Support
- ✅ Why Character Encoding Matters in Excel
- ✅ Step 1: Check Your Current Default Encoding
- ✅ Step 2: Opening UTF-8 CSV Files Correctly (Without Garbled Text)
- ✅ Step 3: Changing Default Encoding for CSV Exports
- ✅ Step 4: For Older Versions of Excel (No UTF-8 Option)
- ✅ Step 5: Changing Excel’s Default Import Encoding via Registry (Advanced)
- ✅ Step 6: Setting UTF-8 as the Default System Locale (Windows 10/11)
- ✅ Step 7: Handling Encoding When Using Power Query
- ✅ Step 8: Converting Multiple CSV Files to UTF-8 Automatically
- ✅ Step 9: Verifying Encoding of Existing Files
- ✅ Step 10: Common Mistakes and Troubleshooting
- ✅ Step 11: When to Use UTF-16 or Shift-JIS Instead
- ✅ Step 12: Practical Use Cases
- ✅ Summary: Mastering Excel’s Character Encoding for Reliable Data Exchange
If you’ve ever opened a CSV file in Excel and seen strange characters like “アイテム” instead of readable text — you’ve experienced character encoding issues.
These garbled characters appear when the file’s encoding (for example, UTF-8 or Shift-JIS) doesn’t match Excel’s default character set.
By default, Excel uses a regional code page (like ANSI or Windows-31J for Japanese systems), which often conflicts with UTF-8 — the global standard for multilingual data exchange.
In this guide, we’ll dive deep into how to change Excel’s default encoding settings, ensure UTF-8 compatibility, and prevent text corruption when importing or exporting CSV files.
This tutorial is intended for advanced users, IT professionals, and anyone handling multilingual or cross-system data in Excel.
✅ Why Character Encoding Matters in Excel
Character encoding defines how letters, symbols, and numbers are stored as binary data.
When you open or save a CSV file, Excel reads that data using its default encoding settings.
If the encoding doesn’t match, Excel misinterprets bytes — producing unreadable symbols.
・Common Example
Original CSV (UTF-8 encoded):
商品名,価格
アイテムA,1000
アイテムB,2000
Opened directly in Excel (without UTF-8 support):
è³æ ¼,ä¾¡æ ¼
ã¢ã¤ãã A,1000
ã¢ã¤ãã B,2000
✅ Cause: Excel used Shift-JIS or ANSI to read a UTF-8 file.
✅ Fix: Change default encoding or import properly using UTF-8 settings.
✅ Step 1: Check Your Current Default Encoding
Excel doesn’t display encoding settings directly, but you can infer them from your system locale.
・Windows Method
- Press Windows + R → Type
control→ OK. - Go to Clock and Region → Region → Administrative tab.
- Click Change system locale.
- Note the language setting (e.g., Japanese (Japan) → Code Page 932 = Shift-JIS).
✅ Result:
If your system locale uses Shift-JIS, Excel defaults to that encoding when opening or saving CSV files.
✅ Tip:
UTF-8 (code page 65001) is ideal for international data compatibility.
✅ Step 2: Opening UTF-8 CSV Files Correctly (Without Garbled Text)
Instead of double-clicking the file, import it manually with the correct encoding.
・Steps
- Open a blank workbook in Excel.
- Go to Data → Get Data → From Text/CSV.
- Select your CSV file.
- In the import preview window, choose File Origin → 65001: Unicode (UTF-8).
- Click Load.
✅ Result:
The text now displays correctly, preserving Japanese, accented, or special characters.
✅ Why It Works:
This method bypasses Excel’s default system encoding and lets you explicitly select UTF-8.
✅ Step 3: Changing Default Encoding for CSV Exports
When you save data as CSV in Excel, it typically uses ANSI or Shift-JIS.
You can manually change this to UTF-8 when saving files.
・Steps
- Click File → Save As.
- Choose location and filename.
- In “Save as type,” select CSV UTF-8 (Comma delimited) (*.csv).
- Click Save.
✅ Result:
Your exported CSV file now uses UTF-8 encoding, eliminating garbled text when imported into other systems (like Google Sheets, databases, or web apps).
✅ Note:
This option is available in Excel 2016 and later. If using Excel 2013 or older, see the next section.
✅ Step 4: For Older Versions of Excel (No UTF-8 Option)
If your Excel version lacks “CSV UTF-8,” use one of the following workarounds.
・Option 1: Use Notepad to Convert Encoding
- Save your file as normal CSV.
- Open it in Notepad.
- Go to File → Save As.
- Choose Encoding → UTF-8.
- Click Save.
✅ Result:
The file converts to UTF-8 without changing data structure.
・Option 2: Use VBA Macro to Export UTF-8
You can automate UTF-8 export with a custom VBA macro.
Sub SaveAsUTF8()
Dim fso As Object, ts As Object
Dim sPath As String, sData As String
Dim rng As Range, r As Range, c As Range
sPath = "C:\Users\Public\output_utf8.csv"
For Each r In Range("A1").CurrentRegion.Rows
For Each c In r.Cells
sData = sData & c.Value & ","
Next c
sData = Left(sData, Len(sData) - 1) & vbCrLf
Next r
Set fso = CreateObject("Scripting.FileSystemObject")
Set ts = fso.CreateTextFile(sPath, True, True) 'True = Unicode (UTF-16), use ADODB.Stream for UTF-8
ts.Write sData
ts.Close
MsgBox "Saved as UTF-8: " & sPath
End Sub
✅ Advanced Tip:
If you need strict UTF-8, replace CreateTextFile with ADODB.Stream (supports encoding "UTF-8" explicitly).
✅ Step 5: Changing Excel’s Default Import Encoding via Registry (Advanced)
⚠️ Warning: This method involves Windows Registry edits. Back up your system before making changes.
Excel determines CSV import encoding from Windows code pages.
You can override it by modifying the registry.
・Steps
- Press Windows + R, type
regedit, press Enter. - Navigate to:
HKEY_CURRENT_USER\Software\Microsoft\Office\<version>\Excel\Options(Replace<version>with your Excel version number, e.g., 16.0 for Excel 2016) - Right-click Options → New → String Value.
- Name it:
ImportUTF8 - Set its value to
"1".
✅ Result:
Excel now prioritizes UTF-8 encoding when opening text/CSV files.
✅ Tip:
Restart Excel after editing the registry to apply the change.
✅ Step 6: Setting UTF-8 as the Default System Locale (Windows 10/11)
If you frequently work with UTF-8 data, set it as the default system locale.
・Steps
- Press Windows + I → Time & Language → Language & Region.
- Click Administrative language settings.
- In the “Region” dialog, go to the Administrative tab.
- Click Change system locale.
- Check “Beta: Use Unicode UTF-8 for worldwide language support.”
- Restart your computer.
✅ Result:
Your entire system (including Excel, Notepad, and PowerShell) now defaults to UTF-8.
✅ Warning:
Some older applications may not behave correctly under full UTF-8 locale mode. Test carefully before deploying company-wide.
✅ Step 7: Handling Encoding When Using Power Query
Power Query automatically detects encoding for text and CSV imports — but sometimes misidentifies them.
・Fixing Incorrect Encoding in Power Query
- Go to Data → Get Data → From Text/CSV.
- In the import preview, click File Origin drop-down.
- Select the correct encoding manually (e.g., “65001: Unicode (UTF-8)”).
✅ Benefit:
Ensures Power Query transformations process characters correctly, avoiding loss of non-ASCII symbols.
✅ Step 8: Converting Multiple CSV Files to UTF-8 Automatically
If you handle dozens of CSVs daily, you can batch-convert them using Power Query or VBA.
・Using Power Query
- Place all CSV files in one folder.
- Go to Data → Get Data → From Folder.
- Excel lists all files in that folder.
- Click Combine → Combine & Transform Data.
- In the preview, select UTF-8 under File Origin.
- Click Close & Load.
✅ Result:
Excel merges all CSVs into one dataset — all read as UTF-8 automatically.
・Using VBA for Batch UTF-8 Conversion
Sub ConvertCSVtoUTF8()
Dim fso As Object, folder As Object, file As Object
Dim tsIn As Object, tsOut As Object
Dim pathIn As String, pathOut As String, text As String
pathIn = "C:\Data\CSV_Input"
pathOut = "C:\Data\CSV_UTF8\"
Set fso = CreateObject("Scripting.FileSystemObject")
Set folder = fso.GetFolder(pathIn)
For Each file In folder.Files
Set tsIn = fso.OpenTextFile(file.Path, 1, False)
text = tsIn.ReadAll
tsIn.Close
Set tsOut = CreateObject("ADODB.Stream")
tsOut.Type = 2 'Text
tsOut.Charset = "UTF-8"
tsOut.Open
tsOut.WriteText text
tsOut.SaveToFile pathOut & file.Name, 2
tsOut.Close
Next file
MsgBox "Batch UTF-8 conversion completed!"
End Sub
✅ Use Case:
Perfect for nightly automation of CSV exports for web or database upload.
✅ Step 9: Verifying Encoding of Existing Files
You can confirm a file’s encoding using tools like:
- Notepad++: Menu → Encoding → See which option is checked.
- PowerShell:
Get-Content .\sample.csv | Out-File -Encoding UTF8 new.csv - Command Line (chcp):
Usechcpto check the current code page (65001 = UTF-8).
✅ Tip:
Always verify before import — mismatched encoding is the #1 cause of text corruption in Excel.
✅ Step 10: Common Mistakes and Troubleshooting
・1. Opening CSV by Double-Click
Excel uses system encoding by default → leads to mojibake.
✅ Fix: Always import via “Get Data → From Text/CSV.”
・2. Saving as CSV (ANSI) by Accident
✅ Fix: Choose “CSV UTF-8” from Save As options.
・3. Copying Between UTF-8 and Non-UTF-8 Sheets
✅ Fix: Use “Paste Values” and ensure both files share the same encoding type.
・4. Missing Headers or Line Break Issues
✅ Fix: Check delimiter consistency and open with UTF-8-aware tools like Power Query or Notepad++.
・5. Import Errors in Other Systems (ERP/CRM)
✅ Fix: Confirm that the destination system also supports UTF-8 input.
✅ Step 11: When to Use UTF-16 or Shift-JIS Instead
While UTF-8 is the global standard, some environments still require legacy encodings.
| Scenario | Recommended Encoding | Reason |
|---|---|---|
| Japanese legacy systems | Shift-JIS | System compatibility |
| Windows native apps | ANSI (CP932) | Regional standard |
| Cross-platform / Web | UTF-8 | Universal compatibility |
| Database exports | UTF-8 or UTF-16 | Unicode-safe |
✅ Rule of Thumb:
Use UTF-8 whenever possible, but follow system constraints when integrating with older software.
✅ Step 12: Practical Use Cases
・1. International CSV Sharing
Ensure product or customer data files open correctly on any computer worldwide.
・2. Web App Integration
Prepare UTF-8 CSV uploads for web-based databases or APIs (e.g., Google Ads, Shopify).
・3. Data Migration
Prevent corruption when moving between ERP, CRM, or BI systems.
・4. Automation & RPA
Guarantee consistent text encoding when generating CSVs via UiPath, Power Automate, or Python scripts.
✅ Result:
UTF-8 encoding ensures smooth interoperability across platforms and eliminates “garbled text nightmares.”
✅ Summary: Mastering Excel’s Character Encoding for Reliable Data Exchange
- Excel’s default encoding depends on Windows locale settings.
- To prevent garbled text, import CSVs via “Get Data → From Text/CSV” and choose UTF-8.
- Use “CSV UTF-8” when saving files for global compatibility.
- Advanced users can modify the registry or system locale for permanent UTF-8 behavior.
- Automate encoding conversions with VBA or Power Query for consistent results.
By mastering these techniques, you’ll never face unreadable CSV files again — even when working across languages, regions, or systems.
With UTF-8 as your default standard, Excel becomes a truly international data tool — capable of handling complex multilingual datasets with precision and stability.
