ExcelでCSV保存したときに半角スペースがはてな(?)に文字化けする
ExcelからCSV形式で保存するには、「名前を付けて保存」ダイアログでCSV(カンマ区切り)を選択すればOKです。 #エクスポートしたいところですが、保存しかできないようですね。連続でやるときにはすごく不便。 ところが、これをやると、文字化けが発生してしまうことがあります。 現象 半角スペースが含まれるExcelファイルで、Excel上で見るぶんには問題ないのですが、これをCSVエクスポートすると、1行目だけ文字化けします。 test 原因 これは、同じ半角スペースに見えても「CODE=32(0x20)」の「半角スペース」と、「CODE=160(0xA0)」の「NBSP」があるのが原因になっています。 0xA0のNBSPはShift-JISでは表現できないので、保存時に「?」に文字化けしてしまいます。 解決方法 これを解消するには、160のNBSPを32の半角スペースに一括置換すれば良いです。 適当なセルに「=CHAR(160)」という数式を入力して、その結果をコピーします。 その後、Ctrl+Fの「置換」から、検索対象にコピーした内容をペースト、置換後の文字に普通の半角スペースを入力して、「すべて置換」すればOKです。 これで、見た目は変わらないけど文字化けしないExcelファイルができました。 というか、普通に使っていればこんな問題は起きないんですが、なぜか送られてきたExcelがこんなことになっていて・・・ 先方はどんな使い方をしていたんでしょうね?
Copy and paste this URL into your WordPress site to embed
Copy and paste this code into your site to embed