Rainbow Engine

IT技術を分かりやすく簡潔にまとめることによる学習の効率化、また日常の気付きを記録に残すことを目指します。

Microsoft

ExcelでUTF-8のcsvを開く際に文字化けなく開く方法について

投稿日:2022年7月16日 更新日:

 

<目次>

(1) ExcelでUTF-8のcsvを開く際に文字化けなく開く方法について
 (1-1) 事象・エラーメッセージ
 (1-2) 原因
 (1-3) 対策①
 (1-4) 補足:UTF-8やSHIFT-JISについて

(1) ExcelでUTF-8のcsvを開く際に文字化けなく開く方法について

(1-1) 事象・エラーメッセージ

csvファイルをダブルクリックで開いた時に、列が少しずれて表示されてしまう事象が発生しました。例えば下図の例では本来は6列目に来てほしい値が5列目に表示されてしまっています。
 
(図112)

実際にファイルの中身を見てみると、カンマの数的に6列目に表示されるべきです。
(図111)

(1-2) 原因

ファイル自体のエンコーディングは「UTF-8」であるが、その方式でcsvファイルを開けていないために発生しています。
 
今回の例では「SHIFT-JIS」で処理してしまっていたために、列のズレが生じていました(csvをダブルクリックしてExcelで開く際に、SHIFT-JISが適用されて開かれている)。
 
実際に比較してみると、左側(UTF-8)は日本語部分が正常に「テスト」など表示されていますが、右側(SHIFT-JIS)は文字化けが発生しています。そして、Excelで開いた時の化け方と一致しており、SHIFT-JISで開かれていた事が確認できました。
 
(図121)

(1-3) 対策①

結論として、急いでいる方は「ExcelのPower Query機能」で開くのが一番良さそうです。
 
少し時間を掛ければ、Power Shell等でもう少し便利にできそうですが、一旦はすぐに使える応急処置のアプローチをここでは紹介させて頂きます。
 
・①Excelの「データ」を選択
(図131①)
・②「データの取得」→「ファイルから」→「テキストまたはcsvから」を選択
(図131②)
・③対象のcsvを選択して「インポート」を押下
(図131③)
・④元のファイルで「65001: Unicode (UTF-8)」を選択し、区切り記号は「コンマ」を選択して「読み込み」を押下
(図131④)
・⑤結果確認
文字化けなく、列のズレなく読み込めている事を確認できました。
(図131⑤)

とはいえ、このやり方は少しスピード感に欠けるので、サクラエディタのエンコーディング方式の切替えと併用して、ぱっと見たい時はサクラエディタで、じっくり見たい時はPower Queryで、という感じが落としどころでしょうか。
 
理想的には、Excelの設定でcsvを開くときのデフォルトのエンコーディングを指定できれば良いのですが。
 

(1-4) 補足:UTF-8やSHIFT-JISについて

UTF-8やSHIFT-JISはよく「文字コード」と呼ぶ人が多いですが、正確には「文字符号化方式」と呼ばれており、各文字に対応するビットの組合せを、運用に即した別のビット組合せに変換するための「変換ルール」を定めています。
 
つまり、今回読み込んだcsvは「UFT-8」で変換する事を想定したコードで作られているのに、それを「SHIFT-JIS」で変換しようとすると正しい変換が出来ずに「文字化け」が発生するという事になります。
 

Adsense審査用広告コード


Adsense審査用広告コード


-Microsoft

執筆者:


comment

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

関連記事

Azure Storageとは?特徴や4種類のストレージの概要をご紹介

  <目次> (1) Azure Storageとは?特徴や4種類のストレージの概要をご紹介  (1-1) Azure Storageとは?4種類のストレージの概要   (1-1-1) BL …

Azure AD(Azure Active Directory)とは?簡単に概要をご紹介

  <目次> (1) Azure AD(Azure Active Directory)とは?簡単に概要をご紹介  (1-1) ひと昔の認証の仕組み(Active Directoryが無い時代 …

Azure Machine Learningで「Failed to pull Docker image」が出る原因と対処法について

  <目次> (1) Azure Machine Learningで「Failed to pull Docker image」が出る原因と対処法について  (1-1) エラー概要  (1-2 …

Azureの可用性ゾーンとは?概要や設定画面の例も交えてご紹介

  <目次> (1) Azureの可用性ゾーンとは?概要や設定画面の例も交えてご紹介  (1-1) Azureの可用性ゾーンが無い場合に起きる問題  (1-2) Azureの可用性ゾーンとは …

Outlookで予定表の分類の「色」選択が表示されない原因と対策

  <目次> (1) Outlookで予定表の分類の「色」選択が表示されない原因と対策  (1-1) 発生事象  (1-2) 原因  (1-3) 対策 (1) Outlookで予定表の分類の …

  • English (United States)
  • 日本語
Top