解説
CSVを開いたら文字化けした?保存し直す前に文字コードを選ぼう
CSVのデータを文字として読むルールを知ろう。日本語の練習ファイルを用意し、Excelの取り込みでUTF-8と列の内容を確認する手順を紹介するよ。

CSVを開いたら、日本語の商品名が読めない文字になってしまった。すぐに上書き保存せず、まず元ファイルを残そう。データ自体が壊れたのではなく、文字コードの読み方が合っていない場合があるよ。
CSVは、行と、カンマなどで区切った項目を持つテキスト形式。文字コードは、文字をデータの数値へ対応させるルールだよ。今回はUTF-8で保存された架空の商品一覧を、内容を確認しながら取り込むことを目標にする。
元ファイルを残して、取り込みを試す
UTF-8の練習用CSVには、次の二行だけを入れている。個人情報や外部参照、数式は含めていない。
商品,個数
ノート,2
リンク先の内容を保存して使おう。ブラウザ上で文字として開くこともある。手動で別の内容に書き換えず、保存したファイルをExcelなどの取り込み画面から指定する。
編集部では、ファイルがUTF-8として読めることと、二行二列の内容をPythonで確認した。各読者のExcel環境で画面操作を検証したものではないため、メニュー名は利用中の版に合わせて確認してね。
ダブルクリックで読めなくても、取り込みを選べる
Microsoftの公式説明では、UTF-8のCSVはBOM付きなら通常の方法で開けると案内されている。BOMは、ここではUTF-8であることを示す手掛かりとして先頭に置かれる印。すべてのCSVに必ず付いているわけではない。
BOMのないファイルなどで日本語が正しく開かない場合は、公式手順にある「データ」から「データの取得」「ファイルから」「テキスト/CSVから」といった取り込みを使う方法がある。Excelの版・OSによって項目名や利用できる画面が異なる。
- 元のCSVをコピーして控えを残す。
- Excelのテキスト/CSV取り込みから練習用ファイルを選ぶ。
- 文字コードの選択肢がある場合、UTF-8(65001などの表記)を選ぶ。
- プレビューで「商品」「ノート」が読めることを確認する。
- 区切り文字がカンマで、商品と個数の二列に分かれているか確認する。
- 問題がなければ読み込み、元のCSVを上書きせず作業を続ける。
この練習ファイルはBOMなしのUTF-8。環境によっては、普通に開いても正しく読める。その場合は文字化けを無理に再現せず、取り込み時にも同じ内容が読めることを確かめればよいよ。
文字化けと列の変換は別に見る
日本語が読めるようになっても、電話番号の先頭の0が落ちたり、識別番号が日付や数値へ変換されたりすることは別の問題。CSVそのものは、表計算ソフトのセル書式を十分に持つ形式ではないんだ。
実際の住所録や商品番号を扱うときは、取り込み時の列のデータ型も確認しよう。コードや番号は計算に使う値とは限らない。必要に応じて文字列として取り込み、先頭の0や桁数を確認する。
UTF-8を選んでも直らないとき
元の文字コードがUTF-8とは限らない。配布元の説明を確認し、不明なら提供者へ文字コードと区切り文字を尋ねよう。別の文字コードを手当たり次第に選び、読めたように見えるだけで確定しないことも大切だよ。
また、すでに文字化けした内容で上書きされたファイルは、読み方を変えるだけでは戻らないことがある。元データや履歴から取り直そう。同期とバックアップの違いも、控えを考えるときの参考になるよ。

みんなのコメント 0
感想や、試してみたことを聞かせてね。コメント・返信は承認後に公開されます。
最初のコメントをどうぞ。