CSVファイルの文字化けを修正する方法
こんにちは、美由紀です。
今回は、「CSVファイルの文字化けを修正する方法」について解説したいと思います。
原因の1つに、文字コードによるものがあります。
この記事では、文字コードが原因のCSVファイルの文字化けの修正方法を記載していきます。
CSVファイルの文字化けの概要(現象・原因・対処方法)
CSVファイルの文字化けの概要(現象・原因・対処方法)についてです。
■現象
CSVファイルを開くと、文字が文字化けしている。
■原因
エクセルでCSVファイルを作成すると、CSVファイルの文字コードは「Shift-JIS」で作成・保存されます。
しかし、別のソフト・ツール等によって作られたCSVファイルによっては、文字コードを「UTF-8」等、別の文字コードを使って作成している場合があります。
別の文字コードで作られたCSVファイルをエクセルで読み込もうとする時、例えば文字コード「UTF-8 BOMなし」のCSVファイルを「Shift-JIS」と間違って読み込んでしまうと、文字化けが発生します。
▼例
◎文字コード「Shift-JIS」のCSV→正常に反映。「Shift-JIS」で表示される
◎文字コード「UTF-8 BOMあり」のCSV→正常に反映。「UTF-8」で表示される
◎文字コード「UTF-8 BOMなし」のCSV→文字化け。「Shift-JIS-JIS」と誤認し文字化けして表示される
■対処方法
対処方法は4種類あります。
◎対処方法1(※推奨)
CSVファイルの入手時の段階でCSVファイルの文字化けを最初から起こさせない方法。
入手段階でのCSVファイルの文字コードを「Shift-JIS」、または「ANSI」に指定し、CSVファイルを作成します。
◎対処方法2(※推奨)
CSVファイルを入手後、エクセルの新規ファイルで取り込んで取り込み時に修正し、新規CSVファイルとして保存する方法。
文字化けのデータを取り込み時に、文字コードを文字化けのしない文字コードの調整します。
◎対処方法3(※非推奨)
CSVファイルをWindowsの「メモ帳」で開いて文字コードを指定し保存して、CSVファイルの文字化けを修正する方法。
◎対処方法4(※非推奨)
CSVファイルをWindowsの「メモ帳」で「上書き保存」して、CSVファイルの文字化けを修正する方法。
それでは、「CSVファイルの文字化けを修正する方法」の手順に移りたいと思います。
対処その1:CSVファイルの入手時の段階でCSVファイルの文字化けを最初から起こさせない方法
◎対処その1(※推奨)
CSVファイルの入手時の段階でCSVファイルの文字化けを最初から起こさせない方法です。
→ 入手段階でのCSVファイルの文字コード選択できる場合、最初に文字コードを指定すれば文字化けは発生させずにCSVファイルを利用できます。
※注意
入手段階で文字コードを指定できない場合は、他の対処方法に進んでください。
→ 選択する文字コードは「Shift-JIS」、または「ANSI」を選択してCSVファイルを作成します。
→ 完了です。
文字コード「Shift-JIS」、「ANSI」は、そのままエクセルで開ける文字コードなので、この文字コードで出力すると文字化けが起こらないため、CSVファイルの文字化けを最初から起こさせない方法でCSVファイルを正常に入手できました。
対処その2:CSVファイルを入手後、エクセルの新規ファイルで取り込んで取り込み時に修正し、新規CSVファイルとして保存する方法
◎対処その2(※推奨)
CSVファイルを入手後、エクセルの新規ファイルで取り込んで取り込み時に修正し、新規CSVファイルとして保存する方法です。
はじめに、エクセルの新規ファイルを作成します。
→ デスクトップ左下「スタート」ボタンを選択し、「スタートメニュー」欄にある「Excel」を選択し、「Excel」起動します。
→ エクセルの新規ファイルを「空白のブック」で作成します。
→ エクセル上部のタブ「データ」を選択し、「外部データの取り込み」欄の「テキストファイル」を選択します。
→ インポート用のウィンドウ画面が表示されるので、文字化けするCSVファイルを選択し、「開く」を選択します。
→ 新しい画面「テキストファイルのウィザード」が表示されるので、画面中央右側の文字コードの表示を確認します。
▼参考
サンプル画像では、(932;日本語(シフト JIS)が表示されています。
→ 画面下部は、CSVファイルのプレビューです。
サンプル画像ではCSVファイルの文字が文字化けになっています。
→ このプレビューを見ながら、文字が正常に表示される文字コードを選択します。
文字コードは「65001:Unicode(UTF-8)」で修正できる事が多いと思います。
→ 文字コードを修正すると、CSVファイルのプレビューの文字化けが修正されます。
→ 修正を確認したら、右下の「次へ」を選択します。
→ 「区切り文字」指定画面が表示されます。
→ 区切りに使われている文字「区切り文字」を選択し、「データのプレビュー」に「区切り位置」が表示されるよう変更できたら、「次へ」を選択します。
→ 「列のデータ形式」の選択画面が表示されるので、「列のデータ形式」選択して「データのプレビュー」で表示を確認し「完了」を選択します。
※参考
列によって「文字列」や「日付」等、別の表示に変更したい場合は、この画面で列を選択し、「列のデータ形式」を選択して変更します。
→ 「データの取り込み」画面が表示されるので「OK」を選択します。
→ これで、文字化けしたCSVファイルのデータが新規のエクセルファイル上で正常に表示されます。
→ エクセル上部のリボン「ファイル」を選択します。
→ 左側のメニュー「名前を付けて保存」を選択します。
→ 「名前を付けて保存」画面が表示されるので、任意の保存したい場所を選択し、「保存したいファイルの種類」を指定して「保存」します
▼参考
CSV形式で保存し直す場合は、以下の2種類あります。
◎CSV UTF-8(コンマ区切り)(*.csv)
◎CSV(コンマ区切り)(*.csv)
→ 完了です。
これでCSVファイルの文字化けが修正できました。
再度CSVファイルを開いてみると、文字化けが直っています。
対処その3:CSVファイルをWindowsの「メモ帳」で開いて文字コードを指定し保存して、CSVファイルの文字化けを修正する方法
◎対処その3(※非推奨)
CSVファイルをWindowsの「メモ帳」で開いて文字コードを指定して保存します。
※注意
別の対処方法をおススメします。
この対処方法は、文字コードを保存する時に指定して修正する方法なのですが、プレビューで見ながら修正ができてるか確認できないため、文字コードを指定して保存した後に修正できているか確認し、修正できていなければ別の文字コードでやり直しになるため、二度手間になる可能性があります。
→ はじめに、文字化けしているCSVファイルのフォルダを開きます。
→ 文字化けするCSVファイルを右クリックし、「プログラムから開く」を選択した後、「メモ帳」を選択します。
→ 文字化けを起こしているCSVファイルを、「メモ帳」で開きました。
→ 「メモ帳」の左上「ファイル」を選択し、「名前を付けて保存」を選択します。
→ 画面「名前をつけて保存」が表示されるので、画面下部にある文字コードを「UTF-8」を選択します。
▼参考
「メモ帳」で「UTF-8」を選択すると、「UTF-8 BOMあり」になるので、エクセルで読み込める「UTF-8」になります。
※注意1
Excelの設定によっては文字化けは文字コード「UTF-8」ではなく、「ANSI」を選択することによって修正する場合があります。
※注意2
Windowsのバージョンによって「UTF-8」か「UTF-8(BOM 付き)」と分かれている場合は、「UTF-8(BOM付き)」を選択してください。
CSVファイルの文字コードが「UTF-8 BOMなし」の場合は、文字化けのままの状態になってしまいます。
→ 文字コードを選択後、「保存」を選択します。
→完了です。
これでCSVファイルの文字化けが修正されました。
再度CSVファイルを開いてみると、文字化けが直っています。
対処その4:CSVファイルをWindowsの「メモ帳」で「上書き保存」して、CSVファイルの文字化けを修正する方法
◎対処その4(※非推奨)
CSVファイルをWindowsの「メモ帳」で「上書き保存」して、CSVファイルの文字化けを修正する方法。
※注意
この対処方法はWindows OSのバージョンによっては、CSVファイルの文字化けを修正できません。
最近のWindows OSのバージョンアップによって、Windows OSのバージョンによっては、メモ帳の初期設定の保存形式が「UTF-8 BOMなし」に変更されています。
エクセルは、文字コード「UTF-8 BOMなし」で保存されたCSVファイルを開こうとすると、「UTF-8」を認識せず「Shift-JIS」と認識してしまい、文字化けが発生するため、文字化けの修正をできません。
▼参考
ニュース(※外部サイト)2018年12月11日
「メモ帳」に多数の改善、BOMなしUTF-8がデフォルト保存形式に ~「Windows 10 19H1」
→ はじめに、文字化けしているCSVファイルのフォルダを開きます。
→ 文字化けするCSVファイルを右クリックし、「プログラムから開く」を選択した後、「メモ帳」を選択します。
→ 文字化けを起こしているCSVファイルを、「メモ帳」で開きました。
→ 「ファイル」を選択し、「上書き保存」を選択してファイルを上書き保存します。
→完了です。
これでCSVファイルの文字化けが修正されました。
再度CSVファイルを開いてみると、文字化けが直っています。
CSVファイルの文字化けを修正する方法のあとがき
この記事書いたきっかけが、クライアントから送られてきたCSVファイルが文字化けしていて、ファイル覗いてみたら文字コードが「UTF-8」でした。
エクセル自体は「UTF-8」に対応してる筈なのに何でだろう?って調べてみたら、送られてきたCSVファイルの文字コードは「UTF-8 BOMなし」でした。
同じ「UTF-8」でも、「UTF-8」は2種類あります。
◎UTF-8 BOMなし
◎UTF-8 BOMあり
エクセルは「UTF-8 BOMなし」を読み込もうとすると「Shift-JIS」としてファイルを開いてしまって、「Shift-JIS」で表示できない文字部分に文字化けが発生してしまう場合がります。
そのため、元々のCSVファイルを最初から別の文字コードのCSVファイルにするか(対処方法1)、エクセルでファイルと読み込めるように、CSVファイルの文字コード「UTF-8」に修正すると(対処方法2~4)、エクセルで文字化けが発生せずに表示できるようになります。
Windowsアップデートで「メモ帳」の保存時の初期設定文字コードが「UTF-8 BOMなし」になるらしいので、今後この文字化けにひっかかる人増えるのかな…。
▼参考
ニュース(※外部サイト)2018年12月11日
「メモ帳」に多数の改善、BOMなしUTF-8がデフォルト保存形式に ~「Windows 10 19H1」
———————–
動作確認環境
OS Windows10 Pro
Excel MicroSoft Office Professional Plus 2016
Excelバージョン1811
Webブラウザ Chrome(クローム)
———————–
ディスカッション
コメント一覧
まだ、コメントがありません