課題
↓こうなってしまった。「これは次に保存すると壊れるぞ」というケースを手操作でなんとかします。
(自動化する場合については、このページの最後にリンクを付けます。)
ちなみに原因
文字化けの原因は、このファイルが UTF-8で保存されていることが原因です。
メモ帳の右下にUTF-8と書いてあることでわかります。
UTF-8からの書き換えが許されるのであれば、メモ帳で「名前を付けて保存」で文字コードを「UTF-8」から「ANSI」に変更して保存しなおすことが一番簡単な対応策になります。
(ただし、その際に、次のメッセージがでる場合は、UTF-8では保存できても ANSIでは保存できない文字を含んでいるので、データが欠損しますので、その場合はこのアプローチは取れません。)
このアプローチが取れる場合はそれでいいので、ここではそれ以外のケースを議論します。
すなわち、
UTF-8でできてるファイルを開くことが重要であって、ANSIに変更することが許されないケース。
対処方法のまえにおことわり
筆者は Excel2019を使っています。もし、より新しいExcelではこんなことをする必要がないということでしたら、ごめんなさい。
対処方法
とりあえず、開いちゃったExcelは、上書き保存せず、そっと閉じます。
そして、ごめんなさい!
まず、ファイルの拡張子が 「.csv」である限り、いかんともできません。
Excelの仕様なので、「.csv」ファイルであることは、いったんあきらめて、エクスプローラで 拡張子を 「.txt」に変更してください。
エクスプローラで「表示」タブの「ファイル名拡張子」にチェックを入れます。
拡張子を.txtに変更します。
次に WindowsのスタートメニューからExcelを起動します。
(「スタートメニューから」は実際には重要ではないです。要は、新規ブックを作るときと同じ要領でExcelを起動します。)
Excelの「開く」→「参照」で「ファイル名」の隣のファイルの種類のドロップダウンを
「テキストファイル (*.prn;*.txt;*.csv)」 にして、目的のファイルを選択して、「開く」を押します。
そうすると、こんな画面が表示されます。
(拡張子が.csvだと次の画面は表示されず、いきなりcsvが開いてしまいます。
それを避けることが拡張子を変えた目的です。)
表示された画面で、「次へ」をクリックします。
元のファイルに「65001 : Unicode (UTF-8)」が自動選択されていることを確かめて、「次へ」を押します。
拡張子を .txtにすることで、 文字コードがUTF-8であることを自動認識してくれました。 Excelの中で .csv とは ANSIで保存されてるファイルであるという固定観念があるものと思われます。
(データのファイル形式は「コンマやタブなどの」のままにすることが重要です。)
「タブ」にチェックが入っているので、このチェックを外し
「カンマ」にチェックを入れて、「次へ」をクリックします。
次の画面では、「完了」をクリックします。
保存するときは、「名前を付けて保存」でファイルの種類を「CSV UTF-8 (コンマ区切り) (*.csv)」としてください。その際、ファイルの拡張子は、強制的に.csvになります。
保存したファイルを開くときは、やはり、また開く前にファイルの拡張子を変えてください。
これでは面倒なので自動化
こちらに別記事としてご用意しました。