【エクセル】CSVが文字化けする:原因と直し方(UTF-8/Shift_JIS)

時計 / 時計

エクセルでCSVが文字化けするときの直し方

記事ではMicrosoftのエクセルにおける、CSVを開くと文字化けする原因と直し方について詳しく解説していきます。

CSVファイルはシステム間のデータのやり取りで主に利用されますが、CSVファイルを開くと文字化けすることがあります。

CSVファイルが文字化けする原因は文字コードの不一致が原因であり、適切な対処をすることで文字化けを解消することができます。

本記事を通して、エクセルでCSVが文字化けする問題の原因と直し方について理解を深めてください。

ここではMicrosoft 365による最新のエクセルを使用しています。

Microsoft用語の確認

Microsoft 365とはMicrosoft社が提供しているOfficeアプリケーション(Outlook、Word、Excel、SharePoint、PowerPointなど)やサービスを利用できるサブスクリプション(月額課金制)のクラウドサービスです

エクセル:CSVファイルが文字化けする

CSVファイルが文字化けするとは

私は社内SE(システムエンジニア)として働いており、日々アプリケーションやパソコンに関するさまざまな問題や問い合わせに対応しております。

社内の業務ではCSVファイルを扱うことが多く、CSVファイルに関する次のような問題が発生することがあります。

CSVファイルで発生する問題

ダブルクリックしてCSVファイルを開いたら文字化けしている

CSV(Comma Separated Values)とはデータをテキストで表現したカンマ区切りのテキストファイルです。

CSVファイルはシステム間でデータのやり取りを行うときやデータベース内のデータを抽出したときなどに生成されます。

POINT

CSVは多くのシステムやアプリに対応しており、大量のデータの受け渡しに利用されている

このCSVファイルをダブルクリックして開くと、次図のように中身が文字化けすることがあります。

Excel:CSVの中身が文字化けする

CSVの中身が文字化けするとデータが読めなくなり、内容の確認や編集ができなく、業務に支障が出てしまいます。

CSVファイルが文字化けする原因

CSVファイルが文字化けする原因は文字コードです。

CSVはテキストファイルなので、中のデータがどの文字コードで書かれているか等の情報が埋め込まれていません。

そのためエクセルはCSVファイルを開くとき、自動的に文字コード「Shift_JIS」(CP932)で開きます。そのとき対象のCSVファイルがUTF-8で保存されていると文字化けが発生します。

POINT

最近のシステムではCSVをUTF-8で保存することが多いです。特にUTF-8のBOMなしのCSVでは顕著に文字化けが発生します

つまりUTF-8で保存されたCSVファイルをエクセルがShift_JISで開くため(文字コードの不一致)に文字化けが発生しているということです。

IT用語の確認

UTF-8とは世界中の文字を扱える文字コード、Shift-JISは日本語専用に作られた文字コードです

このような文字化けが発生するCSVファイルは以下のような操作で生成されたCSVで発生することが多いです。

  • クラウドサービス(AWSやGoogleスプレッドシートなど)
  • ChatGPTなどAI
  • 多くのWebアプリケーションやLinux系システム
  • MacのNumbers

エクセルでCSVファイルが文字化けするときの対処方法については次項より解説していきます。

文字化けするCSVファイルの対処方法

エクセルで開くと文字化けするCSVファイルの対処方法は以下2つあります。

  • エクセルからUTF-8で指定してCSVファイルを開く
  • メモ帳から開いて文字コード「UTF-8(BOM付き)」(ANSI)で上書き保存する

エクセルで「データの取得」からUTF-8を指定してCSVファイルを開く

エクセルでは以下の方法で文字化けしたCSVファイルを正常に開くことができます。

  1. エクセルを起動する
  2. 画面上部から「データ」タブをクリックする
  3. エクセル:「データ」タブをクリック
  4. リボンから「データの取得」>「ファイルから」>「テキストまたはCSVから」をクリックする
  5. エクセル:「テキストまたはCSVから」をクリック
  6. 表示されたデータの取り込み画面から対象のCSVを選択する
  7. 表示された画面から「元のファイル」で「65001:Unicode(UTF-8)」を選択して「読み込み」をクリックする
  8. エクセル:「65001:Unicode(UTF-8)」を選択して「読み込み」をクリック

上記の操作でCSVファイルを文字コードUTF-8で読み込みし、文字化けが解消されます。

文字化けを解消したデータを保存したい場合は、上書き保存でファイルを保存してください。

メモ帳から開いて文字コードUTF-8(BOM付き)で上書き保存する

Windowsに標準搭載されているテキストエディターでCSVの文字コードを変更して、正常に開けるようにできます。

メモ帳でCSVの文字コードを変更する方法は以下の通りです。

  1. メモ帳を開く
  2. メモ帳にCSVファイルをドラッグ&ドロップする
  3. エクセル:メモ帳にCSVファイルをドラッグ&ドロップ
  4. CSVの中身がメモ帳内に表示される。画面左上にある「ファイル」タブをクリックし、表示されたメニューから「名前を付けて保存」を選択する
  5. エクセル:「名前を付けて保存」を選択
  6. 表示された「名前を付けて保存」画面でエンコードを「UTF-8(BOM付き)」に変更して「保存」をクリックする
  7. エクセル:エンコードを「UTF-8(BOM付き)」に変更して「保存」をクリック

上記の操作によりCSVの文字コードをUTF-8に変更できます。

まとめ

本記事「【エクセル】CSVが文字化けする:原因と直し方(UTF-8/Shift_JIS)」はいかがでしたか。

ここでは以下の項目について解説してきました。

  • エクセルでCSVファイルが文字化けする問題について
  • CSVファイルが文字化けする原因
  • 文字化けするCSVファイルの対処方法

CSVの文字コードを理解することで、文字化けする問題は簡単に解決できます。CSVを生成する際に文字コードを選択できる場合は、基本的に「UTF-8(BOM付き)」で生成するようにしましょう。

エクセルには様々な仕事に役立つ機能が備わっています。以下記事では仕事で使える便利な機能をご紹介しています。ぜひ読んでいただき仕事に役立ててください。