ExcelでCSVファイルが文字化けする理由・対処方法

Excel で CSV ファイルを開くと文字化けしてしまうことがあります。
その理由と解決策をまとめてみました。

L1000795

※文字化けしたCSV by Leica M10

  Excel で CSV ファイルを開くと文字化けする理由

CSV ファイルとは、Comma-Separated Values、カンマ(コンマ)で区切られたデータ形式です。

image
異なるソフトでデータを受け渡しするときに役立ちます。
CSV ファイルにすればデータの移行がかんたんになるのです。

このCSV ファイルをExcelで開くこともできます。
CSVファイルをダブルクリックすればExcelが起動し、CSV ファイルの中を見ることができ、そのままExcelで加工することもできるのです。

バージョンによっては Excel が起動しない場合もありますので、CSV ファイルをエクスプローラーで右クリックして[プログラムから開く]→[別のプログラムを選択]、Screenshot_6

Excelを選んでから「常にこのアプリを使った.csvファイルを開く]にチェックを入れてOKを押しましょう。
Screenshot_5こうすれば、CSVファイルが次回からはExcelで開きます。
Mac で Windows のExcelを使ってる場合は、同様にしてWindowsのExcelが立ち上がるようにしておくと便利です。

CSV ファイルを Excel で開いた場合、カンマの位置でセルが区切られて表示されますが、

Screenshot_3ときどき、このように文字化けしてそのままでは使えない状態になることもあります。
Screenshot_4文字化けするのは、文字コードといわれるものが違うからです。
Excelでは シフトJIS という文字コードが使われていますが、世界標準は UTF-8という文字コードが使われています。
他のソフトからエクスポートした CSV ファイルが、UTF-8でも、Excelは シフトJIS で読み込んでしまうのです。
日本語で読み込まなければいけないところを英語として読み込むようなイメージで考えてみていただければ。
言葉が違うので解読できないということです。

こういった場合の対処方法はあります。

CSV ファイルが文字化けした場合のExcelでの対処方法

もし、ダブルクリックして開いた CSV ファイルが文字化けした場合、いったん閉じて別の方法で開きましょう 。
[データ]タブ→[テキストまたは CSV から]をクリックし、
(画面は Office 365です。他のバージョンでは[データの取得]を選ぶ場合もあります) 。Screenshot_9
該当の CSV を選んで開くと、次のような画面になります。
文字コードが確かに 日本語(シフトJIS) になっているはずです。
Screenshot_10この文字コードを Unicode(UTF-8)に変えましょう。
探すと大変なので、このコード(65001)の頭文字の6を押すと、すばやく見つけることができます。
Screenshot_11「6」を押して、 UTF 7を選択して、「下」を押して選択という流れです。

その後、[読み込み]を起こしましょう。

Screenshot_12
文字コードを変えて読み込み、このデータを使うことができます。
テーブルという形式です。

Screenshot_13

昔ながらのデータ読み込みの方がわかりやすい部分もあるので、そちらを使いたいのであれば、Excelのオプション(Alt→T→O。1つずつ押す)で、[データ]の [テキストから(レガシ)]にチェックを入れ、 OK を押し Excel を再起動しましょう。

Screenshot_17

[データ]タブの[データの取得]→[従来のウィザード]→[テキストから(レガシ)]を選択すると、

Screenshot_18

このような画面が開きます。
Screenshot_19こっちだと UTF-8だったら UTF-8と認識してくれるので楽です。
毎回確実にそうなるかどうかは何ともいえませんが。

[次へ]をクリックして、どこで区切るかで「カンマ」を指定するとデータを開けます。
Screenshot_20この指定の手間はありますが。

 

 

CSV ファイルで保存するときにも文字コードを意識

Excelを CSV ファイルで保存するには、[名前を付けて保存 (F 12)]で、ファイルの種類で [CSV(コンマ区切り) を選びます。
今は、この CSV では、文字コードも選択できるようになりました。
CSV UTF-8(コンマ区切り)と CSV(コンマ区切り) があります。

ここで CSV UTF-8を選択してしまうと、他のソフトで読み込むときにエラーが出ることがあるので注意しましょう。

Screenshot_7
レガシ会計ソフト、弥生会計では CSV UTF 8だと、取り込むときに、このようなエラーが出ます。

Screenshot_8

クラウド会計ソフト freee であればエラーは出ず、CSV UTF-8でも、CSVでもどちらでも取り込むことができます。

Excelで、この変更がある前は、[名前を付けて保存(F12)]でファイルを選んで、cを押せば、CSV(コンマ区切り)を選択できましたが、この変更があってからは、cだと、CSV UTF-8(コンマ区切り)を選択するようになりました。
弥生会計に取り込むときは不便です。
CSV保存マクロを使っているときは気にならないのですが。

ExcelファイルをCSVで保存するときに、マクロを使う理由 | EX-IT

 

freeeはエクスポートするときに、シフトJISとUTF-8を選ぶことができます。
標準設定は UTF-8で、Screenshot_1

これを Shift JIS に変えて、エクスポートすれば、Excelでスムーズに開けます。
Screenshot_2標準設定が Shift JIS でもいいのでは?と思ったりしますが。
RPA でエクスポートしているので、まあ気になりませんけど。
freeeのExcelデータダウンロードを自動化するRPA(UiPath) | EX-IT

ソフトで気になるところを自分好みに変えられ、ストレスを減らせるのもプログラミングのいいところです。

文字化けするときには、文字コードを確認してみましょう。
意識してみましょう

 

 

 

 



■編集後記

昨日は、早朝から大分の妻の実家へ。
空港へはタクシーで。
1月1日ということもあり、タクシーが結構走っていてすぐに捕まえられました。
空港は、それなりに混んではいましたが、早めに着いたのでも問題なく、大きい機体だったので機内も快適でした。
到着後、年越しライブの影響で爆睡していたのは内緒です。

「1日1新」

大分 南国酒家

 

■娘(2歳)日記

妻の実家にあるピアノが気に入って、何度も遊んでいました。
ピアノを弾きながら歌っています。
それっぽく見えるのがすごいです。