ADVERTISEMENT

【Excel】Excelで日本語ファイル名のCSVだけ文字化けする時のエンコード確認

【Excel】Excelで日本語ファイル名のCSVだけ文字化けする時のエンコード確認
🛡️ 超解決

Excelで日本語ファイル名のCSVを開くと文字化けする、というトラブルは会社員の間でよく発生します。特にWindowsの標準機能や他のアプリでは問題なく開けるのに、Excelだけ文字化けする場合、原因はファイルのエンコード方式にあることがほとんどです。この記事では、文字化けを解決するためのエンコード確認手順を、具体的な操作と共に解説します。また、管理者に確認すべき設定や、よくある失敗パターンも紹介しますので、すぐに実践できる内容です。

【要点】この記事で確認すること

  • 最初に見る場所: CSVファイルのエンコード(文字コード)を確認します。UTF-8、Shift_JIS、BOMの有無などが重要です。
  • 切り分けの軸: 端末側(Excelのバージョンや設定)か、ファイル側(作成元のシステムや保存方法)か、または両方かを判断します。
  • 注意点: 会社PCでレジストリやシステムのエンコードを変更する場合は、管理者の許可が必要です。勝手に変更すると他のアプリに影響します。

ADVERTISEMENT

文字化けの原因を理解する

日本語ファイル名のCSVだけがExcelで文字化けする場合、多くの原因はエンコードの不一致です。CSVファイルはプレーンテキストですが、文字を表す方式(エンコード)がいくつか存在します。代表的なものにUTF-8、Shift_JIS、UTF-16などがあります。Excelは起動時にファイルの先頭バイト(BOM)を手がかりにエンコードを自動判別しますが、BOMがないUTF-8ファイルをShift_JISと誤認識して文字化けすることがあります。逆に、Shift_JISで保存されたCSVに日本語ファイル名が含まれていると、ファイル名自体が化けるケースもあります。以下では、エンコードの違いとBOMの役割を詳しく見ていきます。

エンコードの違い(UTF-8 vs Shift_JIS)

UTF-8は世界中の文字を扱える汎用的なエンコードで、Webや現代のシステムで広く使われています。一方、Shift_JISは日本語Windowsで長く使われてきたエンコードで、古いシステムや業務アプリでは依然として主流です。Excelの日本語版はShift_JISをネイティブに扱うため、Shift_JISで保存されたCSVは開きやすいですが、UTF-8はBOMがないと正しく認識されにくい特性があります。ファイル作成元がUTF-8なのにShift_JISで開こうとすると、日本語部分が「????」や「â???”」のように文字化けします。

BOMの有無が与える影響

BOM(Byte Order Mark)はファイルの先頭に付与される特殊なバイト列で、エンコードの識別に使われます。UTF-8の場合、BOMは「0xEF 0xBB 0xBF」です。BOM付きUTF-8はExcelが正しくUTF-8と認識し、文字化けしません。しかし、BOMなしUTF-8はExcelがShift_JISと誤認識するため、日本語が化けます。逆にShift_JISにはBOMの概念がなく、先頭バイトが不自然になる場合もあります。したがって、文字化けを防ぐためには、CSVファイルにBOMを付与するか、Excelで明示的にエンコードを指定する必要があります。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

エンコードの確認手順(メモ帳を使う方法)

CSVファイルのエンコードを手軽に確認するには、Windows付属のメモ帳を使う方法が最も簡単です。以下の手順で、文字化けの原因となるエンコードを特定できます。

  1. エクスプローラーで文字化けしているCSVファイルを右クリックし、「プログラムから開く」→「メモ帳」を選択します。
  2. メモ帳でファイルが開けたら、日本語が正しく表示されているか確認します。もし正しく表示されていれば、ファイル自体のエンコードは問題ありません。文字化けしている場合は、エンコードが適切でない可能性があります。
  3. メモ帳で「ファイル」→「名前を付けて保存」をクリックします。ダイアログが開いたら、下部の「エンコード」欄を確認します。ここに現在のエンコードが表示されます(例:UTF-8、ANSI(Shift_JIS)、Unicodeなど)。
  4. エンコードをメモします。特に「UTF-8」か「ANSI」かを確認し、BOMの有無はメモ帳では直接わかりませんが、ファイルサイズの先頭数バイトを特殊なエディタで確認すればわかります。
  5. 必要に応じて、メモ帳でエンコードを変更して保存します。例えば、UTF-8のまま保存したい場合は「UTF-8」、Shift_JISにしたい場合は「ANSI」を選んで保存します。ただし、この操作はファイルの内容を変える可能性があるため、元のバックアップを取ってから行ってください。

この確認でエンコードが把握できたら、次にExcelで適切に開く方法を試します。

ExcelでCSVを開く際のエンコード指定方法

ExcelでCSVファイルを開くときに、エンコードを明示的に指定することで文字化けを回避できます。以下に、Excelのバージョン別の手順を示します。

Excel 2016/2019/365での手順

  1. Excelを起動し、「データ」タブをクリックします。
  2. 「データの取得と変換」グループにある「テキストまたはCSVから」をクリックします。
  3. 対象のCSVファイルを選択し、「インポート」をクリックします。
  4. プレビュー画面が表示されるので、下部の「ファイルの元の形式」でエンコードを選択します。通常は「65001: Unicode (UTF-8)」または「932: 日本語 (Shift-JIS)」を選びます。日本語ファイル名のCSVで文字化けする場合は、Shift_JIS(932)を試してみてください。
  5. 正しく表示されたら「読み込み」をクリックします。毎回同じ操作が必要な場合は、手順2で「データの取得」→「ファイルから」→「テキスト/CSV」を選んで同様に行います。

Excel 2013以前での手順

  1. Excelを起動し、「ファイル」→「開く」をクリックします。
  2. ファイルの種類を「テキストファイル」に変更し、CSVファイルを選択して「開く」をクリックします。
  3. テキストファイルウィザードが起動します。1ページ目で「カンマやタブなどの区切り文字によってフィールドが区切られている」を選び、「次へ」をクリックします。
  4. 2ページ目で「カンマ」にチェックを入れ、「次へ」をクリックします。
  5. 3ページ目で「詳細設定」をクリックし、「ファイル コード ページ」で適切なエンコード(日本語 Shift_JIS: 932、または Unicode UTF-8: 65001)を選択します。プレビューで正しく表示されることを確認して「OK」→「完了」で開きます。

ADVERTISEMENT

エンコード変換ツールを使った解決法

手動でエンコードを指定しても毎回面倒な場合、CSVファイル自体のエンコードを変換してBOMを付与する方法があります。フリーソフトやExcelのPower Queryを利用する方法があります。以下に代表的な手順を紹介します。

  1. Power Queryを使用する方法: Excelの「データ」→「テキストまたはCSVから」で開き、エンコードを指定して読み込んだ後、「データ」→「テーブル/範囲の作成」でテーブルにします。その後、「ファイル」→「名前を付けて保存」で「CSV UTF-8(コンマ区切り)」を選んで保存すると、BOM付きUTF-8のCSVとして出力されます。
  2. メモ帳で保存し直す方法: メモ帳でCSVを開き、「名前を付けて保存」でエンコードを「UTF-8」に設定して保存します。保存時のエンコードプルダウンには「UTF-8」と「UTF-8(BOM付き)」の区別がわかりにくい場合がありますが、Windows 10以降のメモ帳では「UTF-8」を選ぶとBOMなしで保存されることが多いため、意図的にBOMを付けたい場合は「UTF-8(BOM付き)」が選べるエディタ(サクラエディタなど)を使うと確実です。
  3. 専用の変換ツールを使用する方法: 社内で許可されている場合、フリーの文字コード変換ソフト(例:nkf、Encoding Converterなど)を使うと高速に一括変換できます。ただし、会社PCへのインストールには管理者の許可が必要です。

よくある失敗パターンと対策

「ファイル名を変えると直る」という誤解

日本語ファイル名を英数字に変更すると文字化けが直るケースがありますが、これは根本解決ではありません。ファイル名がShift_JISで保存されている場合、ファイル名自体のエンコードが原因でExcelが内部で文字化けすることがありますが、内容のエンコードとは別問題です。ファイル名を変えても内容のエンコードは変わらないため、次に別の日本語ファイルを扱うとまた文字化けします。正しくは、ファイル名のエンコードではなく、ファイル内容のエンコードを調整する必要があります。

Excelの自動変換を誤認するケース

ExcelでCSVを開くと、自動的に文字コードを判別して変換しますが、その結果、一部の漢字が別の文字に変わることがあります。例えば、「髙」(はしご高)が「高」に変換されたり、特殊記号が消えることがあります。これはExcelの自動変換機能によるもので、エンコードの誤認識とは異なります。対処法としては、Power Queryで読み込む際に「データ型の変換」を無効にするか、元のデータをテキストとして保持する設定を行います。

エンコードタイプ BOMの有無 Excelでの表示 推奨対策
UTF-8 BOMあり 正しく表示される そのまま使用可能
UTF-8 BOMなし 文字化けする BOM付きに変換、またはExcelでエンコード指定
Shift_JIS なし 正しく表示される(通常) そのまま使用可能
UTF-16 あり 正しく表示される そのまま使用可能

管理者に確認すべきポイント

会社PCでCSVの文字化けが頻発する場合、管理者に以下の点を確認すると効率的です。

  • システムのロケール設定: Windowsの「地域」設定で「ベータ: ワールドワイド言語サポートでUnicode UTF-8を使用」が有効になっていると、ANSIエンコード(Shift_JIS)がUTF-8として扱われ、逆に文字化けが発生することがあります。管理者にこの設定の状態を確認し、業務に支障があれば無効にしてもらいます。
  • ExcelのDDE設定: Excelのオプション「詳細設定」→「全般」→「他のアプリケーションから動的データ交換 (DDE) を使うことを無視する」のチェックが外れていると、CSVをダブルクリックで開いたときに文字化けしやすくなります。管理者に確認し、必要に応じてレジストリ修正を依頼します。
  • 業務システムの出力エンコード: CSVを生成している社内システムのエンコード設定を調べてもらいます。多くの場合、システムの設定でUTF-8(BOM付き)に変更することで文字化けが解決します。

よくある質問

Q. CSVファイルをダブルクリックで開くと常に文字化けします。毎回Power Queryを使うしかないですか?

A. ダブルクリックで開く動作は、ファイルの関連付けに依存します。CSVファイルの関連付けをExcelではなくメモ帳に変更するか、Excelの起動時に自動的にPower Queryを呼び出すマクロを組むことも可能ですが、セキュリティ上の制限がある場合は管理者に相談してください。簡単な対策として、CSVファイルを右クリック→「プログラムから開く」→「Excel」を毎回選ぶことで、文字化けしにくい方法(テキストファイルウィザード)が起動します。

Q. メモ帳でエンコードを確認したら「UTF-8」と表示されましたが、Excelで開くと文字化けします。なぜですか?

A. メモ帳の「UTF-8」はBOMなしUTF-8であることが多いため、ExcelがShift_JISと誤認識している可能性があります。BOM付きUTF-8として保存し直すか、Excelで「データ」→「テキストまたはCSVから」でUTF-8を指定して開いてください。

Q. 文字化けしたCSVを一度Excelで開いて、編集後に上書き保存したら大丈夫ですか?

A. 文字化けした状態で上書き保存すると、化けたままの内容が保存されてしまいます。必ず適切なエンコードで開き直した後に編集し、保存する際は「CSV UTF-8(コンマ区切り)」形式(Excel 365/2019)を選ぶか、名前を付けて保存でエンコードを指定してください。

まとめ

Excelで日本語ファイル名のCSVだけ文字化けする原因は、UTF-8とShift_JISのエンコードの不一致、特にBOMの欠落にあります。まずはメモ帳でファイルのエンコードを確認し、必要に応じてBOM付きUTF-8に変換するか、Excelのデータ取り込み機能で明示的にエンコードを指定してください。会社PCの設定変更が必要な場合は、管理者と相談しながら進めると安心です。この記事で紹介した手順を実践すれば、多くの文字化けトラブルは解決できるはずです。


📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】

ADVERTISEMENT