エクセルはCSV形式(カンマ区切り)のデータを取り込むことができます。
一番手っ取り早い取り込み方法は、CSVファイルをダブルクリックして直接エクセルで開くこと。
でも、時々エクセルの中に取り込まれたCSVが文字化けすることがあるんですよね。
これはCSVの文字コードが原因なんです。
この記事の内容
- CSVで文字化けする文字コード、文字化けしない文字コード
- エクセルの『データ取り込み』(インポート)を使ってで文字化けを解消する
- 『データ取り込み』すら不要で、文字化けさせない方法(メモ帳の保存)
ここでは、確実に文字化けせずにエクセルにCSVデータを取り込む方法を紹介します。
よくCSVデータが文字化けすることが多い人は、文字化けする原因と正しい取り込み方法を参考にしてください。
エクセルでCSVを直接取り込んだ時に文字化けするパターン
世の中のコンピューターシステムで扱われる文字コードは沢山ありますが、日本の場合には代表的なものとして、『シフトJIS(SJIS)』、『UTF-8』、『EUC-JP』がよく使われます。
そして、PCなどのOSであるWindosで使われる文字コードは、『シフトJIS』が中心となっています。
そのため、CSVファイルの文字コードが『シフトJIS』であれば、CSVファイルのダブルクリックでもエクセルで文字化けが発生することはありません。
ただし、『EUC-JP』と『BOM無しのUTF-8』の文字コードでは文字化けが発生します。
ちょっとややこしいのが『UTF-8』で、この『UTF-8』には『BOM付きのUTF-8』と『BOM無しのUTF-8』の二種類が存在すること。
エクセルは『BOM付きのUTF-8』だと『UTF-8』コードと正しく認識するため、取り込みでも文字化けもせず正しく処理されます。
一方、『BOM無しのUTF-8』場合は、それが『UTF-8』だと認識されないため、結果的に文字化けが発生してしいます。
つまり、『UTF-8』の場合には、『BOM付き』では文字化けが発生、『BOM無し』では文字化けが発生しないという、ややこしいことになります。
CSVで文字化けする文字コート、文字化けしない文字コード
文字コードと文字化けの関係をまとめると、次のようになります。
CSVファイルの文字コード | エクセルでの文字化け |
---|---|
シフトJIS(SJIS) | しない |
UTF-8(BOM付き) | しない |
UTF-8(BOM無し) | する |
EUC-JP | する |
これから、文字コードが『BOM無しのUTF-8』になっているCSVを、文字化けせずにエクセルに取り込む方法を紹介します。
テキストエディタを使ったCSVファイルの文字コード判別
CSVファイルの文字コードを調べたい場合は、テキストエディタでCSVを開いて確認する方法が簡単です。
フリーのテキストエディタである『サクラエディタ』を使ってCSVファイルを開くと、下の方のステータスバーに、開いたCSVファイルの文字コードが表示されます。
こちらは、有名な『秀丸エディタ』の場合。
『秀丸エディタ』の場合は、『UTF-8』のBOM付き、BOM無しはステータスバーだけではわかりません。
その場合は、文字コードのところをマウスで右クリックすると、メニューでわかるようになっています。
見ての通り、『BOM』にチェックがついていると『BOM付き』、チェックがついていないと『BOM無し』となります。
エクセルのデータ取り込み(インポート)でCSVを文字化けさせない
では、文字化けする『BOM無しのUTF-8』を取り込む方法です。
リボンの『データ』タブをクリックし(①)、『外部データの取り込み』にある『テキストファイル』をクリック(②)
(取り込む段階で変更はできますけどね)
ここで、取り込みたいCSVファイルを選択し(①)、『インポート』をクリック(②)
ここでは、『カンマやタブなどの、、、』のチェックと、CSVの内容が文字化けしていないことを確認し、『次へ』をクリック。
次に、CSVはカンマ区切りであるため『カンマ』のみにチェックをつけ、『次へ』をクリック。
最後に、『完了』を押すと、エクセルのシートにCSVが取り込まれます。
上の画像にも書いているように、『1/1』や『1-1』のようなデータはエクセルに取り込んだ時点で勝手に日付に変換されます。
そういうデータがない場合は、『列のデータ形式』は『G/標準』のままでOK。
最後に、取り込み先となるシートや、セルの位置を確認するダイアログが出ますが、変更がなければそのまま『OK』をクリック。
これで、文字化けせずにエクセルの中に取り込むことができます。
メモ帳でCSVファイルの文字コードを変換して文字化けを防ぐ
文字化けを防ぐために、『エクセルのデータ取り込み』を使ってCSVファイルを取り込みました。
ただ、手順としてはちょっと手間がかかって面倒です。
そこで、もっと簡単な『メモ帳で文字化けするCSVファイルを変換』する方法を紹介します。
この方法を使えば、変換したCSVファイルをダブルクリックしても、文字化けが発生しなくなります。
つまり、『エクセルのデータ取り込み』を使う必要もありません。
手順は超簡単です。
文字化けが発生するCSVファイルをメモ帳で開いて、『CTRL』+『S』で強制的に保存するだけです。
これだけで、CSVファイルをダブルクリックしてもエクセルで文字化けが発生しなくなります。
なんで、文字化けが発生しなくなるかというと、保存することで『BOM無しのUTF-8』→『BOM付きのUTF-8』に変換されるからです。
この方法は、メモ帳は『UTF-8』のファイルを保存するときには、必ず『BOM付き』で保存する仕様を利用しています。
頻繁にCSVから取り込む作業が多い場合は、こちらの方法が簡単でおすすめです。
ただし、保存前には念の為にバックアップを取ってください。
CSV取り込みで文字化けさせない方法のまとめ
まとめ
- CSVファイルのダブルクリックで、文字化けする文字コードは決まっている。
- 文字化けさせない正しい方法は、エクセルのデータ取り込み。
- 手っ取り早くCSVを文字化けせずに取り込みたい場合は、メモ帳で一度CSVを保存する。
エクセルは外部データとしていろんな種類のファイルを扱えます。
その中でも、最もポピュラーなのがCSVファイルですが、他のシステムから抽出(エクスポート)したCSVファイルを取り込むと文字化けすることも多いです。
そんな時は、エクセルのデータ取り込みを使って文字化けを防ぎましょう!
データ取り込みが面倒な人には、メモ帳によるCSVファイルの保存がお手軽でおすすめです。