- 更新日 : 2025年12月2日
スプレッドシートのCSVで文字化けが発生したら?対処法まとめ
GoogleスプレッドシートからCSVファイルをダウンロードし、別のアプリケーション(特にMicrosoft Excelなどの表計算ソフトやテキストエディタ)で開いた際に、日本語が文字化けすることがあります。
これは、ファイルに保存された文字のエンコーディング(文字コード)と、ファイルを開くアプリケーションが想定しているエンコーディングが一致しないために起こります。
この記事では、スプレッドシートのCSVで文字化けが発生する原因を解説し、最も一般的な解決策であるエンコーディングの変換方法を、具体的にステップバイステップでご紹介します。
目次
スプレッドシートのCSVで文字化けが発生する原因は?
文字化けの主な原因は、エンコーディング(文字コード)の不一致です。
Googleスプレッドシートは、CSV形式でファイルをダウンロードする際、国際標準であるUTF-8という文字コードを使用します。これは、日本語を含む世界中のほとんどの文字を正しく扱える、現在最も推奨されているエンコーディングです。
一方で、特に古いバージョンのMicrosoft Excelなど、特定のアプリケーションは、日本語のCSVファイルを開く際に、自動的にShift JIS(またはCP932)という、日本で以前主流だった文字コードを想定して処理しようとします。
この「UTF-8で保存されたファイルを、Shift JISとして開こうとする」という食い違いが、文字化け(特に「???」や意味不明な記号の羅列)を引き起こす原因となります。
| 操作 | アプリケーションが使用するエンコーディング |
|---|---|
| スプレッドシートからの出力(CSV保存) | UTF-8 |
| Excelなどでの入力(CSVを開く) | 多くの日本語環境でShift JISを想定 |
このギャップを埋めるため、ダウンロードしたファイルを「開く前」または「開いた直後」に、エンコーディングをUTF-8からShift JISに変換するか、アプリケーション側で「これはUTF-8だよ」と明示的に伝える必要があります。
文字化けを回避する対処法は?
文字化けを解消するための方法はいくつかありますが、ここでは特に効果的で、多くのユーザーが利用する3つの主要な対処法を解説します。
対処法 1:テキストエディタでエンコーディングを変換する(環境次第で有効/文字損失に注意)
CSV を Excel で開く前に、テキストエディタで UTF-8 → Shift JIS(CP932) に変換して保存し直す方法です。Shift JIS で表せない文字(絵文字・一部記号・異体字など)は「?」に置換されるため、対象データが Shift JIS で表現可能か事前確認してください。
Windows(メモ帳・サクラエディタ・VS Code など)
CSV を開く → 2) 「名前を付けて保存」または「エンコードを指定して保存」 → 3) 文字コードで 「Shift JIS」または「CP932」 を選択して保存。
※メモ帳では一覧に 「ANSI」 と表示される場合があります。日本語ロケールでは ANSI = CP932 です。
macOS(テキストエディットなど)
CSV を開く → 2) メニュー 「フォーマット」→「プレーンテキストにする」 → 3) 「ファイル」→「保存」→ ダイアログの 「標準テキストのエンコーディング」 で 「Japanese(Shift JIS)」 を選択して保存。
この方法で保存した CSV を Excel で開くと、Shift JIS 前提の環境でも文字化けが起きにくくなります。ただし文字損失の可能性があるため、必要に応じて後述の「UTF-8 のまま取り込む」方法を優先してください。
Shift JIS で表現できる文字だけで構成された CSV であれば、保存し直したファイルを Excel で開いても文字化けしません。絵文字・特殊記号・一部の漢字が含まれる場合は、UTF-8 のまま Excel に取り込む方法(データの取り込み時に文字コードを UTF-8 に指定/BOM 付き UTF-8 で保存)を検討してください。
対処法 2:Excelの「データ取得」機能を利用する(Excel 2016以降推奨)
最近のExcelには、CSVファイルをインポートする際に文字コードを指定できる機能があります。この機能を使えば、ファイルを変換せずに、直接UTF-8のまま開くことが可能です。
- Excelを起動し、新しいブックを開きます。
- メニューの「データ」タブをクリックします。
- 「データ取得と変換」グループにある「テキストまたはCSVから」を選択します。
- ダウンロードしたCSVファイルを選択して「インポート」をクリックします。
- プレビュー画面が表示されたら、「ファイルの元の形式」(または「ファイルの起源」)のドロップダウンリストで、「65001:Unicode (UTF-8)」を選択します。
- データが正しく表示されることを確認し、「読み込み」をクリックします。
これで、UTF-8として正しく認識されたデータがExcelシートに展開されます。特にExcel 2016以降のユーザーにはこの方法が最も推奨されます。
対処法 3(補足):GASでShift JIS書き出しは実装可能だが要注意
Google Apps Scriptでは Utilities.Charset.SHIFT_JIS などを用いてShift JISでの書き出しを実装可能です。ただし、実装の質と対象文字に依存し、Shift JISで表せない文字は変換時に欠落・置換されます。保守性やセキュリティ面も踏まえ、まずは対処法2(Excel側でUTF-8指定インポート)を優先してください。
スプレッドシートから文字化けを避ける方法
Googleスプレッドシートは CSV/TSV いずれも UTF-8(BOMなし) で書き出します。Excelでの文字化けを避けるには、ファイル形式をTSVに変えるだけでは不十分です。次のいずれかを推奨します。
- Excelの[データ]→[テキスト/CSVから]で取り込み、[ファイルの起源]を「65001: Unicode (UTF-8)」に指定する。(Excel 2016以降の推奨手順)
- どうしても直接開きたい場合は、BOM付きUTF-8に変換して保存してからExcelで開く(エディタ等でBOMを付与)。ExcelはBOM付きUTF-8を自動判別しやすい挙動があります。
- 旧環境でShift JISが前提なら、文字損失に注意しつつテキストエディタ等でUTF-8→Shift JISへ変換してから開く(絵文字・一部記号は「?」になる可能性)。
エンコーディングの理解と正しい手順で文字化けを防ぐ
スプレッドシートのCSVで文字化けが起きる主な原因は、UTF-8で保存されたファイルを、ExcelなどがShift JISとして読み込むことによるエンコーディングの不一致です。
この問題を解決するための代表的な方法は次の3つです。
- テキストエディタでUTF-8からShift JISに変換して保存し直す(最も確実)
- Excelの「データ取得」機能で文字コードをUTF-8に指定して読み込む(Excel 2016以降)
- CSVではなくTSV形式(タブ区切り)でダウンロードして開く(文字化けが起きにくい)
いずれの方法でも、事前にエンコーディングを意識して扱うことで、文字化けを防ぎ、異なる環境間でもスムーズにデータを共有できます。
この記事をお読みの方におすすめのガイド5選【部署別紹介】
最後に、この記事をお読みの方によく活用いただいている人気の資料・ガイドを紹介します。すべて無料ですので、ぜひお気軽にご活用ください。
経理担当者向け
①Excel関数集 32選まとめブック
経理担当者の方をはじめ、ビジネスパーソンが知っておきたい便利なExcel関数集を初級~上級までギュッと網羅。新人社員の研修用などにもお使いいただけます。Google スプレッドシートならではの関数もご紹介しています。
②勘定科目・仕訳辞典(税理士監修)
勘定科目・仕訳に関する基本知識、および各勘定科目の仕訳例を具体的かつ網羅的にまとめた、50ページを超えるガイドを無料で提供しております。お手元における保存版としてでだけでなく、従業員への印刷・配布用としてもぜひご活用ください。
人事労務担当者向け
①入社・退職・異動の手続きガイドブック
書類の回収・作成・提出など手間のかかる入社・退職・異動(昇給・昇格、転勤)の手続き。
最新の制度をもとに、よくある質問やチェックポイントを交えながら、各手続きに必要な情報をまとめた人気のガイドですす。
②社会保険・労働保険の手続きガイド
企業において社会保険および労働保険の加入・喪失手続きは必ず発生し、手続きを誤れば保険事故が発生した際に従業員が不利益を被る可能性があります。
各保険の基本的な手続き方法を入社・退職・異動のシーン別にギュッとまとめた分かりやすいガイドです。
総務・法務担当者向け
契約書ひな形まとめ30選
業務委託契約書や工事請負契約書…など各種契約書や、誓約書、念書・覚書、承諾書・通知書…など、使用頻度の高い30個のテンプレートをまとめた、無料で使えるひな形パックです。
※ 掲載している情報は記事更新時点のものです。
※本サイトは、法律的またはその他のアドバイスの提供を目的としたものではありません。当社は本サイトの記載内容(テンプレートを含む)の正確性、妥当性の確保に努めておりますが、ご利用にあたっては、個別の事情を適宜専門家にご相談いただくなど、ご自身の判断でご利用ください。
関連記事
T.TEST関数の使い方:2つのデータ群の平均値の差を検定する方法
T.TEST関数は、2つのデータ群の平均値に統計的に有意な差があるかを検定する「t検定」を実行する関数です。新薬の効果検証、A/Bテストの結果分析、製造工程の改善効果の確認、教育プログラムの効果測定など、比較実験の結果を科学的に評価する場面…
詳しくみるエクセルで見やすい円グラフを作る方法を解説
エクセルを使って円グラフを作成することは、データを視覚的に表現するための効果的な方法です。円グラフは、全体に対する各要素の割合を簡潔に示すことができ、特にプレゼンテーションや報告書において、情報を直感的に理解してもらう手助けとなります。本記…
詳しくみるDSUM関数の使い方:条件に一致するデータの合計を計算する方法
DSUM関数は、データベース形式の表から指定した条件に一致するレコードの合計を計算する関数です。売上データの条件付き集計、在庫管理での特定商品の合計、経費精算での部門別集計など、複雑な条件での合計計算が必要な場面で活用されます。 例えば、特…
詳しくみるMIDB関数の使い方:文字列抽出を効率的に行う方法
MIDB関数は、Excelで文字列の中から指定した位置にある文字を抽出する関数です。日本語などの全角文字を正確に扱うことができ、データ整理や文字列の処理に役立ちます。 本記事では、MIDB関数の基本的な使い方から実践的な応用方法、よくあるエ…
詳しくみるスプレッドシートで翻訳するには?GOOGLETRANSLATE関数の使い方
GoogleスプレッドシートのGOOGLETRANSLATE関数は、Google翻訳の機能をスプレッドシート内で直接利用できる関数です。多言語対応の商品リスト、国際的な顧客データベース、海外取引先との資料作成など、グローバルビジネスにおいて…
詳しくみるASC関数の使い方を基本から応用、エラー対処法まで解説
ExcelのASC関数について、初心者にも分かりやすく解説します。基本的な使い方から、データクレンジングや集計作業での具体的な利用シーン、TRIM関数など他の関数との組み合わせ、エラーの原因と対処法まで網羅。この記事を読めば、ASC関数をマ…
詳しくみる




