2026年10月10日

CSVがExcelで文字化けする原因と直し方

システムから落としたCSVをExcelで開いたら「繧医≧縺薙◎」のような文字が並んでいた。 よくある現象ですが、原因が分かると対処は一瞬です。仕組みから説明します。

原因:Excelが「Shift_JISだ」と思い込んでいる

文字化けは、保存したときの文字コードと、開くときに想定している文字コードが食い違うと起きます。

文字コードとは、文字をコンピュータ上の数字に置き換えるときの対応表のことです。 日本語では主に2つが使われています。

文字コードどこで使われるか
UTF-8世界中の文字を扱える現在の標準。Webサービスや基幹システムからの出力はほぼこれ
Shift_JIS日本で古くから使われてきたもの。Windowsの古いソフトはこれを想定している

問題はExcelの挙動です。 ExcelでCSVをダブルクリックして開くと、日本語版Windowsでは 「Shift_JISだろう」と思い込んで読もうとします。

そこにUTF-8のファイルを渡すと、対応表が違うので意味不明な文字が並ぶ。これが文字化けの正体です。

ファイルが壊れているわけではありません。読み方を間違えているだけです。

直し方:BOMという目印を付ける

BOM(ボム)とは、ファイルの先頭に付ける3バイトの短い目印です。 中身としては見えませんが、「このファイルはUTF-8ですよ」とソフトに伝える札の役割をします。

ExcelはこのBOMを見つけると、Shift_JISだという思い込みをやめてUTF-8として読み直します。

UTF-8のCSV + BOM = Excelでそのまま開ける

中身の文字は一切変わりません。先頭に目印を足すだけです。

Excelの機能で開く方法もある

ファイルを変換せずに開くこともできます。

  1. Excelを先に起動する
  2. 「データ」タブ →「テキストまたはCSVから」
  3. ファイルを選ぶと、文字コードを選ぶ画面が出る
  4. 「65001: Unicode (UTF-8)」を選ぶ

毎回この手順を踏むなら問題ありませんが、 他の人にファイルを渡す場合は、BOMを付けておくほうが親切です。 相手がダブルクリックするだけで開けます。

逆に、BOMを付けてはいけない場合

ここも知っておくと役に立ちます。

基幹システムや会計ソフトにCSVを取り込む場合、BOMが邪魔になることがあります。 システム側がBOMを「見えない文字」としてそのまま読んでしまい、 1列目の項目名が一致せずエラーになる、という不具合が起きます。

やりたいことBOM
Excelで開いて見たい・編集したい付ける
システムや会計ソフトに取り込みたい付けない

「取り込みエラーになる」「1行目だけおかしい」という場合は、BOMなしを試してください。

文字化けとは別の問題:数字の頭の0が消える

これはよく文字化けと一緒に相談されますが、まったく別の問題です。

「0123」という値が「123」になってしまうのは、Excelが数値だと判断しているから。 電話番号、郵便番号、商品コードでよく起きます。

防ぐには、ダブルクリックで開くのをやめて、 「データ」タブ →「テキストまたはCSVから」で読み込み、 その列の形式を「文字列」に指定してください。

BOMを付けても、この問題は直りません。別の対処が要ります。

カンマでずれるときはタブ区切り

データの中にカンマが含まれていると(住所や金額など)、 カンマ区切りでは列がずれることがあります。

そういうときはタブ区切り(TSV)にすると安定します。 データの中にタブが入ることはまずないからです。

さらにタブ区切りは、Excelにそのまま貼り付けられます。 テキストエディタで開いて全部コピーし、Excelのセルに貼るだけで、きれいに列が分かれます。 ファイルを開く手間すら省けるので、覚えておくと便利です。

オンラインの変換サイトを使う前に

「CSV 文字コード 変換」で検索すると変換サイトがたくさん出てきますが、 その多くはファイルを一度サーバーへアップロードして処理します。

顧客名簿や売上データが、知らない相手のサーバーを経由することになります。 会社によっては情報セキュリティ規程で禁止されているはずです。

下のツールはアップロードを行いません。 すべての処理をブラウザの中だけで完結させています。 確かめたい場合は、ページを開いたあとに通信を切ってから使ってみてください。そのまま動きます。

変換する

下のツールにCSVを入れると、文字コードを自動で判定します。 BOMの有無を確認し、UTF-8として読めるか試し、だめならShift_JISとして扱う、という順で判断します。

プレビューで日本語が正しく表示されているか確認してから、 Excel用(BOM付き)かシステム用(BOMなし)かを選んで保存できます。 区切り文字と改行コードも変換できます。

同じようにファイルを送信せずに使えるツールとして、 画像を軽くする方法や PDFを1つにまとめる方法もあります。