※本ページにはプロモーション(広告)が含まれています
「Webサービスからダウンロードしたコードが読めない」「Google スプレッドシートのCSVをExcelで開いたら文字化けした」——こうした問題は、Excelを日常業務で使うすべての人が一度は経験するトラブルです。
文字化けの原因は明確で、文字コードの不一致が99%の原因です。この記事では、文字化けのしくみを理解した上で、Excel 2016〜2024・Microsoft 365で使える実践的な解決方法をステップ形式で解説します。
- ExcelでCSVが文字化けする根本原因(文字コード)
- テキストインポートウィザードで文字コードを指定して開く方法
- Power Queryで正しく読み込む手順(Excel 2016以降)
- メモ帳でShift-JIS⇔UTF-8 BOM付きに変換する方法
- Windows・Mac版Excelそれぞれの対処法
- 文字化けしないCSVの正しい保存方法
ExcelでCSVが文字化けする根本原因
文字コードとは何か
コンピューターは文字を数字(コード)で管理しています。その「文字と数字の対応ルール」が文字コードです。日本語でよく使われる文字コードには以下の種類があります。
| 文字コード | 説明 | 主な使用場面 |
|---|---|---|
| Shift-JIS(CP932) | Windows日本語標準規格 | Windows系ツール、旧来のシステム |
| UTF-8(BOMなし) | 国際標準。Webで主流 | Google スプレッドシート、Salesforce、kintoneなど |
| UTF-8(BOM付き) | UTF-8 + 識別子 | Excelとの互換用 |
なぜ文字化けするのか
ExcelはデフォルトでShift-JISを想定してCSVを開きます(Windows版)。UTF-8(BOMなし)のファイルをダブルクリックで開くと、Shift-JISとして読み込まれるため文字化けが発生します。
BOM(Byte Order Mark)とは
BOMはファイルの先頭に付く「文字コード識別子」(EF BB BFの3バイト)です。UTF-8 with BOMのファイルはExcelが自動認識できるため文字化けしません。UTF-8 without BOM(BOMなし)はExcelが誤認識してShift-JISとして読み込むため文字化けします。
典型的な文字化けパターン
- 「
縺ゅ>縺。縺・」→ UTF-8をShift-JISとして開いた場合 - 「
ÃÂÃÂéÂÂ」→ Shift-JISをUTF-8として開いた場合 - 英数字は正常で日本語だけ化ける → 典型的な文字コード不一致
- すべて「?」や「□」になる → 対応外の文字コード
原因の発生源別まとめ
| CSVの出所 | 文字コード | 文字化けの有無 |
|---|---|---|
| Google スプレッドシート | UTF-8(BOMなし) | 文字化けする |
| Salesforce、kintone | UTF-8(BOMなし) | 文字化けする |
| Python、PHPで生成 | UTF-8(BOMなし)がデフォルト | 文字化けする |
| 旧来のWindowsシステム | Shift-JIS | 文字化けしない(多くの場合) |
| Excel(Windows版)で保存 | Shift-JIS | 文字化けしない(多くの場合) |
方法A:テキストインポートウィザードで開く(Excel 2016〜2019)
ダブルクリックせず、Excelのデータ取り込み機能を使う方法です。
- Excelを起動し、空白のブックを開く(ファイルをダブルクリックしない)
- 「データ」タブをクリックする
- 「テキストまたはCSVから」または「テキストファイル」をクリックする
- 対象のCSVファイルを選択して「インポート」をクリックする
- ウィザードが開いたら「元のファイル」で文字コードを選択する
- UTF-8の場合:「65001: Unicode (UTF-8)」を選択
- Shift-JISの場合:「932: 日本語 (Shift-JIS)」を選択
- 「区切り記号付き」を選択して「次へ」をクリックする
- 区切り文字で「コンマ」にチェックを入れる
- 「完了」→「既存のワークシート」を選択して「OK」をクリックする
ポイント:ウィザードのプレビューで日本語が正しく表示されているか確認しながら進めてください。
方法B:Power Queryで読み込む(Excel 2016以降・推奨)
Excel 2016以降はPower Queryが標準搭載されており、より柔軟にCSVを取り込めます。最もおすすめの方法です。
- 「データ」タブ →「データの取得」→「ファイルから」→「テキスト/CSVから」を選択する
- CSVファイルを選択してダイアログを開く
- プレビュー画面の「ファイルの起点」ドロップダウンで文字コードを選択する
- UTF-8:「65001: Unicode (UTF-8)」
- Shift-JIS:「932: 日本語 (Shift-JIS)」
- 文字化けがなくなったことをプレビューで確認する
- 「読み込み」または「データの変換」をクリックする
Power Queryの利点
- 文字コードを選ぶ前にプレビューで確認できる
- 次回以降の設定を記憶できる(接続として保存)
- 大容量ファイルにも対応している
方法C:メモ帳でファイルを変換してから開く
すでに文字化けした状態で開いてしまった場合の応急措置として有効です。
- CSVファイルをメモ帳で右クリックして開く(「プログラムから開く」→「メモ帳」)
- 「ファイル」→「名前を付けて保存」を選択する
- エンコードを変更する
- Excelで使う場合:「ANSI(Shift-JIS)」または「UTF-8 BOM付き」を選択
- 変換後のファイルをExcelで(ダブルクリックで)開く
注意:Shift-JISで扱えない文字(一部の記号・絵文字)が含まれる場合はデータが欠損するリスクがあります。その場合はUTF-8 BOM付きに変換するほうが安全です。
Mac版Excelでの対処法
Power Query使用(Microsoft 365 for Mac)
基本的にWindows版と同じ手順で対処できます。「データ」タブ →「データの取得」→「テキスト/CSVから」から文字コードを選択してください。
CotEditorを使って変換する方法
- CotEditor(Mac向け日本語テキストエディタ、App Storeで無料入手可能)でCSVを開く
- メニュー「ファイル」→「別名で保存」を選択する
- エンコードを「Unicode (UTF-8 with BOM)」または「Japanese (Shift JIS)」に変更して保存する
- 変換したファイルをExcelで開く
Continuity CameraはCSVには非対応
Mac版固有の注意点として、Mac版ExcelはShift-JISの自動判定がWindows版より弱い場合があります。Power Queryで「932: 日本語 (Shift-JIS)」を明示的に指定することをおすすめします。
文字化けしないCSVを保存する方法
ExcelからUTF-8 BOM付きで保存する(Excel 2019以降)
- 「ファイル」→「名前を付けて保存」を選択する
- ファイルの種類で「CSV UTF-8(コンマ区切り)(*.csv)」を選択する(※このオプションはMicrosoft 365・Excel 2019以降で利用可能)
- 「保存」をクリックする
注意:「CSV(コンマ区切り)」を選ぶとShift-JIS保存になります。必ず「CSV UTF-8」を選んでください。
用途別の推奨文字コード
| 用途 | 推奨エンコード |
|---|---|
| Excelで主に使う(Windows) | UTF-8 BOM付き または Shift-JIS |
| WebシステムやAPIとやり取り | UTF-8(BOMなし) |
| Mac・Windowsをまたぐ場合 | UTF-8 BOM付き |
| 古いWindowsシステムとやり取り | Shift-JIS |
Excelバージョン別の推奨方法まとめ
| バージョン | 推奨方法 |
|---|---|
| Excel 2016 | テキストインポートウィザード |
| Excel 2019 | テキストインポートウィザード or Power Query |
| Excel 2021 | Power Query(推奨) |
| Microsoft 365 | Power Query(推奨) |
| Excel for Mac | Power Query or CotEditor変換 |
よくある質問(FAQ)
Q1. CSVをダブルクリックで開いたら文字化けした。ファイルは壊れていますか?
壊れていません。文字コードの認識ミスが原因です。テキストインポートウィザードかPower Queryで文字コードを指定して開けば正しく表示されます。
Q2. 文字化けしたままExcelで上書き保存してしまいました。元に戻せますか?
上書き保存してしまうとデータが壊れた状態で保存されるため、元のデータに戻すことは原則できません。開く前のオリジナルファイルが残っている場合はそちらを使用してください。
Q3. Google スプレッドシートからダウンロードしたCSVがExcelで文字化けします。
Google スプレッドシートのエクスポートCSVはUTF-8(BOMなし)です。ダウンロード後、メモ帳でUTF-8 BOM付きに変換するか、ExcelのPower Queryで「65001: Unicode (UTF-8)」を指定して開いてください。
Q4. UTF-8で保存したのに受け取り側がExcelで文字化けしたと言われました。
UTF-8(BOMなし)で保存したと考えられます。UTF-8 BOM付き(「CSV UTF-8」形式)で保存し直して渡してください。BOMが付いていればExcelが自動認識します。
Q5. MacとWindowsでCSVを共有したい。どのエンコードが安全ですか?
UTF-8 BOM付きが最も互換性が高いです。どちらのExcelも正しく認識できます。
Q6. 「この形式ではすべての機能が維持されない場合があります」というメッセージが出ます。
CSVは書式・計算式・複数シートを保持できないため表示される警告です。「このまま使用する」でOKです。データ(値)は正しく保存されます。
Q7. Salesforce・kintoneのCSVエクスポートが毎回文字化けします。毎回変換するのは面倒です。
Power Queryで「接続として読み込む」設定を保存すると、次回以降は設定済みの状態でワンクリックで取り込めます。定期的にCSVを処理する業務では特に有効です。
Q8. CSVを開くと郵便番号の先頭「0」が消えてしまいます。
文字化けとは別の問題です。ExcelがCSVの値を「数値」と判断して先頭の0を除去するためです。テキストインポートウィザードかPower Queryで該当列のデータ形式を「文字列」に設定して開いてください。
Q9. Mac版ExcelでShift-JISのCSVを開くと文字化けします。
Mac版ExcelはShift-JISの自動判定がWindowsより弱い場合があります。Power Queryで「932: 日本語 (Shift-JIS)」を指定するか、CotEditorでUTF-8 BOM付きに変換してから開いてください。
Q10. 「CSV UTF-8(コンマ区切り)」の保存オプションがExcelに表示されません。
Excel 2016以前では「CSV UTF-8」の保存オプションがありません。メモ帳でShift-JISからUTF-8 BOM付きに変換するか、Excel 2019・Microsoft 365にアップグレードすることを検討してください。
まとめ
ExcelでCSVが文字化けする原因は、ほぼ100%がUTF-8(BOMなし)をShift-JISとして読み込んでしまうことです。
- 今すぐ解決したい場合:メモ帳でUTF-8 BOM付きに変換してからExcelで開く
- Excel 2016以降のユーザー:テキストインポートウィザードで文字コードを指定する
- Excel 2019以降・Microsoft 365のユーザー:Power Queryが最もスマートで再利用可能
- CSVを送る側の場合:「CSV UTF-8(コンマ区切り)」で保存することで相手側の文字化けを防げる
文字化けのしくみを理解すれば、原因に応じた最適な方法を選べるようになります。ぜひ本記事の手順を参考に解決してください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!