簡単に文字化け回避!UNICODE (UTF-8) の CSV データを表示する方法

公開日:
UTF-8 の CSV データを Excel で表示

一般的な CVS データは、クリックするだけで直接 Excel で開くことができます。しかし文字コードが Unicode (UTF-8) で生成された CSV ファイルの一部が、Excel 表示すると文字化けしてしまうことがあります。

ExcelでCSVデータが文字化け

原因はテキストファイル?そもそも Excel は Unicode が使えない?ここで1つ重要なことを覚えておいてください。

Excel ファイルでも Unicode (UTF-8) の文字コードを利用することができる!

ではなぜ文字化けしてしまうのか。どうすれば Unicode の CSV ファイルを開けるのかを詳しく解説していきます。

文字化けする理由

Excel が Unicode と判断していない

Excel で Unicode が扱えるのに、Shift_JIS だと思ってファイルを表示しているため、このような文字化けが起こってしまいます。これは Excel の設定でどうにかする問題ではなく、テキストファイル側に UTF-8 である情報が欠けているのが原因です。

テキストファイルが Unicode の場合、データの先頭に特定のバイトコードを挿入することで、そのファイルが UTF-8 や UTF-16 の文字コードであると判別できる仕組みになっています。このバイトコードを Byte Order Mark と言い、頭文字を取って BOM と呼ばれています。

BOM は必須情報ではない

Unicode を識別するために付与される BOM は、全てのファイルに付与されているわけではありません。テキストエディタであれば、BOM の有無に関わらず文字コードに合わせて表示してくれます。一方で、BOM があると正しく動かないシステムがあるのも事実です。

そして肝心の Excel の場合は、BOM が付いた CSV ファイル(テキストファイル)でないと、文字コードが認識されず文字化けしてしまうのです。

CSV ファイルの Excel での文字化けを解消する方法

テキストファイルに BOM を付与する

BOM が付与されていない CSV ファイルが、文字化けの原因になることは理解してもらえたと思います。では手っ取り早く文字化けを解消するには、テキストファイルに BOM を付与してしまえば万事解決です。

Windows の場合、メモ帳で BOM が付与できます。手順は次の通りです。

  1. 対象の CSV データを Windows 標準のメモ帳で開く
    CSV ファイルをダブルクリックすると Excel が起動してしまうので、ファイルを右クリックして [プログラムから開く] → [メモ帳] から表示するのが簡単です。
    CSVファイルをメモ帳で開く
  2. [ファイル] → [名前をつけて保存] を選択
    メニュー[ファイル]から[名前をつけて保存]を選択
  3. 文字コードを [UTF-8 (BOM 付き)] を選択
    下記項目がない場合は、単純に上書き保存するだけで BOM が付与されます。
    メモ帳でBOMコードを付与して保存

    保存後に画面右下に表示されていた文字コードも BOM付きになります。

    メモ帳でBOMの状態を確認

メモ帳アプリに BOM の付与が選択できるようになったのは Windows 10 バージョン 1903 からです。それ以前までは Unicode のテキストを保存すると、勝手に BOM が付与されていました。(当時は BOM なしが選択できなかった)

BOM 付きの CSV ファイルを Excel で開く

では上記の方法で変換した CSV ファイルをダブルクリックして、Excel を開いてみましょう。

文字化け解消後の CSV データ

これで UTF-8 の CSV ファイルも無事に開くことが出来ました!

この記事をシェアする

最新の更新情報は、Twitter、Facebook、Freedly にてお届け!

NJ-CLUCKER RSS

このブログの運営者

NJ

パソコンを使う上でExcelは様々な用途で用いられますが、困ることもたくさんあります。困った時に少しでも役立てるようにと、このサイトを立ち上げました。分かりやすくをモットーに解説をしていくつもりですので、どうぞよろしくお願いします。
尚、このサイトでの説明は、主に Excel2013 を利用していますので、その点につきましてはご了承いただければと思います。

Facebook ページ NJ-CLUCKER
このブログが役に立ったら
「いいね!」お願いします