KouEgg.com
← Blog

2026.06.05

ExcelでCSVが文字化けする原因と 確実に直す3つの方法

CSVをExcelで開くと「縺ゅ>縺・∴」のように化ける原因はShift-JISとUTF-8の不一致。仕組みからBOM付きUTF-8まで、確実に直す方法をまとめました。

ダウンロードしたCSVをExcelで開いたら、日本語が「縺ゅ>縺・∴縺翫€」のような謎の文字列になっていた——CSVを扱う人なら一度は通る道だと思います。

結論から言うと、これはファイルが壊れているわけではありません。文字コードの解釈がずれているだけで、データ自体は無事です。原因さえ分かれば数分で直せるので、まず仕組みから説明します。急いでいる人は「直す方法」のセクションまで飛んでください。

なぜ文字化けが起きるのか

コンピュータは文字をそのまま保存できないので、文字を数値に変換するルール(文字コード)を使ってファイルに書き込みます。日本語で主に使われるルールは2つあります。

  • Shift-JIS(CP932) — 昔からWindowsで使われてきた日本独自の方式
  • UTF-8 — 現在の世界標準。Webサービスが出力するCSVはほぼこれ

たとえば「あ」という文字は、Shift-JISでは 82 A0、UTF-8では E3 81 82 という、まったく異なるバイト列で保存されます。

ここで問題になるのが、CSVファイルには「自分がどの文字コードで書かれているか」を示す情報がないことです。開く側のソフトが中身を見て推測するしかありません。

そして日本語版のExcelは、CSVをダブルクリックで開くときShift-JISだと決め打ちで解釈します。UTF-8で保存されたファイルをShift-JISのルールで読むので、バイト列の解釈がずれて「縺ゅ>縺」のような出鱈目な文字列が表示されるわけです。

つまり典型的な文字化けの構図はこうです。

Webサービス側: UTF-8 でCSVを出力
       ↓
Excel: 「CSVだからShift-JISだろう」と解釈
       ↓
結果: 文字化け

直す方法1:Excelのインポート機能で文字コードを指定する

追加ソフト不要で一番確実な方法です。ダブルクリックで開くのをやめて、Excelのインポート機能から読み込みます。

  1. Excelを起動して空のブックを開く
  2. 「データ」タブ →「データの取得」→「テキストまたはCSVから」を選ぶ
  3. 対象のCSVファイルを選択
  4. プレビュー画面の「元のファイル」で 65001: Unicode (UTF-8) を選ぶ
  5. 文字化けが直ったことを確認して「読み込み」

手順は少し増えますが、文字コードを明示して読むので確実です。逆に、取引先から届いたCSVが化ける場合は、ここで 932: 日本語 (シフト JIS) を選ぶと直ることもあります。

直す方法2:メモ帳で「BOM付きUTF-8」として保存し直す

もっと手軽な方法です。Windows標準のメモ帳で開いて、保存し直すだけです。

  1. CSVファイルを右クリック →「プログラムから開く」→「メモ帳」
  2. メモ帳上では文字化けせずに表示されるはず(メモ帳はUTF-8を正しく認識できるため)
  3. 「ファイル」→「名前を付けて保存」
  4. 文字コードを「UTF-8 (BOM付き)」にして保存
  5. 保存したファイルをExcelでダブルクリックで開く

これで文字化けせずに開けます。なぜBOMを付けると直るのかは、後述の「BOMとは何か」で説明します。

直す方法3:最初からExcelファイル(.xlsx)に変換する

CSVを毎回インポートするのが面倒なら、CSVをExcelファイルに変換してしまうのが手っ取り早いです。.xlsx形式はファイル内部に文字コード情報を持っているので、文字化けという概念自体がなくなります。

当サイトの変換ツールはブラウザ内で変換が完結する(ファイルがサーバーに送信されない)ので、業務データでも安心して使えます。文字コードは自動判定されるため、Shift-JISでもUTF-8でもそのまま放り込めば大丈夫です。

BOMとは何か

方法2で出てきた「BOM付きUTF-8」について補足します。

BOM(Byte Order Mark)は、ファイルの先頭に付ける EF BB BF という3バイトの目印です。これが付いていると、ファイルを開くソフトは「このファイルはUTF-8だ」と確実に判定できます。

日本語版Excelは、BOMがないUTF-8のCSVをShift-JISと誤認しますが、BOMがあればUTF-8として正しく開いてくれます。方法2が効くのはこのためです。

ちなみに、システム開発の現場では逆にBOMが嫌われることもあります。プログラムによってはBOMをデータの一部として読み込んでしまい、1列目のヘッダー名が 名前 のようになってバグの原因になるからです。「Excelで開くならBOM付き、システムに食わせるならBOMなし」と覚えておくと使い分けに迷いません。

まとめ

  • 文字化けの原因は、UTF-8のCSVをExcelがShift-JISとして開いてしまうこと。データは壊れていない
  • 確実なのは「データ」タブからのインポートで文字コードを指定する方法
  • 手軽なのはメモ帳でBOM付きUTF-8に保存し直す方法
  • 根本的に避けたいなら、CSVを.xlsxに変換してから扱う

文字化けは「壊れた」のではなく「読み方を間違えただけ」。そう分かっていれば、もう慌てることはないはずです。

Tools

この記事の内容は、ブラウザだけで使える無料ツールでそのまま試せます。

Excel → CSV 変換ExcelファイルをCSV形式に即時変換。文字化けしないUTF-8に対応。CSV → Excel 変換CSVデータをExcelファイル(.xlsx)に即時変換。