Power QueryでOneDrive上のCSVファイルを読み込んだ際に、日本語の部分が「・」や「????」に化けてしまう問題は、会社のデータ連携業務で頻繁に発生します。この文字化けの原因のほとんどは、CSVファイルの文字コードとPower Queryの読み込み設定のミスマッチです。本記事では、文字化けが起きた時の原因特定手順と、文字コードを確認・変更する具体的な方法を解説します。特に管理者に問い合わせる前に自分でできる切り分けを整理しましたので、ぜひ参考にしてください。
【要点】この記事で確認すること
- 最初に見る場所: Power Queryエディターの「変換」タブ→「データ型の検出」付近の「ソース」ステップで、CSVファイルの文字コードが何に設定されているかを確認します。
- 切り分けの軸: 端末側のExcelの地域設定、OneDriveの同期状態、Power Queryのエンコード指定、CSVファイル自体の文字コード(BOM有無)の4点で原因を絞り込みます。
- 注意点: 会社PCではPower Queryの詳細設定やレジストリ編集をむやみに変更せず、まずはファイルのバックアップを取ってから試行してください。また、OneDriveの「常にこのデバイスに保持」設定がオフだとオフラインでファイルが正しく読めない場合があります。
ADVERTISEMENT
目次
1. Power QueryでOneDriveのCSVが文字化けする原因
Power QueryはCSVファイルを読み込む際に、ファイルの先頭数バイトを調べて文字コードを自動判別します。しかし、OneDrive経由でアクセスするファイルでは、以下の理由で判別が失敗することがあります。
- CSVファイル自体がShift_JIS(日本語Shift JIS)で保存されている – Power QueryはデフォルトでUTF-8を優先するため、Shift_JISのファイルをUTF-8と誤認して文字化けします。
- BOM(Byte Order Mark)の有無 – UTF-8にBOMが付いているとPower QueryはUTF-8と正しく認識しますが、BOMなしUTF-8やShift_JISの場合は判別に失敗します。
- OneDriveの同期タイミング – クラウド上のファイルが完全にダウンロードされていない状態でPower Queryが読み込むと、不完全なデータを処理して文字化けの原因になります。
- Power Queryのエンコード設定が固定されていない – 「ソース」ステップでエンコードが「1252: Western European (Windows)」など誤ったコードページになっていると、日本語が正しく解釈されません。
2. 文字化け発生時の確認手順(Power Queryエディター)
Power Queryエディターを開いて、以下の手順で現在のエンコード設定を確認します。
- Excelで「データ」タブ → 「クエリと接続」をクリックし、該当のクエリを右クリックして「編集」を選択します。
- Power Queryエディターが開いたら、右側の「クエリの設定」ペインの「適用されたステップ」で「ソース」をクリックします。
- 数式バーに表示されたソースの式を確認します。「Csv.Document」関数の引数に「[Encoding=…]」が含まれているかどうかを見ます。
- もしEncodingが指定されていない場合は、自動判別に任せている状態です。その場合、次の手順で明示的にエンコードを設定します。
- 「ホーム」タブ → 「データソースの設定」→「ソースの変更」から、もう一度ファイルを選び直すこともできますが、より確実なのは数式バーを直接編集する方法です。
数式バーでの編集例:Csv.Document(File.Contents("C:\path\file.csv"),[Delimiter=",", Encoding=65001]) のようにEncodingにコードページ番号を指定します。65001はUTF-8、932はShift_JIS(日本語)、1200はUTF-16LEなどです。
3. CSVファイル自体の文字コードを確認する方法
Power Queryで文字化けが起きたら、まずCSVファイルそのものがどの文字コードで保存されているかを調べます。以下の方法があります。
3-1. メモ帳で開いて確認する
Windowsのメモ帳でCSVファイルを開き、「ファイル」→「名前を付けて保存」を選ぶと、ダイアログ下部に「文字コード」のドロップダウンが表示されます。現在開いているファイルの文字コードが選択された状態で表示されるため、それがファイルの実際のエンコードです。
3-2. サクラエディタやVS Codeを使う
サクラエディタでは右下のステータスバーに「SJIS」「UTF-8」などと表示されます。VS Codeでは右下の「UTF-8」や「Shift JIS」という表示をクリックするとエンコードの変更が可能です。これらのツールでファイルを開けば、実際の文字コードが一目でわかります。
3-3. BOMの有無を確認する
BOMはファイルの先頭に付与される特殊なバイト列です。UTF-8のBOMは「EF BB BF」、UTF-16LEのBOMは「FF FE」です。バイナリエディタで確認するか、Power Queryの「バイナリ変換」を使って先頭数バイトを調べることもできますが、一般的にはメモ帳で名前を付けて保存した時に「UTF-8(BOM付き)」か「UTF-8」の表示で判断できます。
ADVERTISEMENT
4. Power Queryで文字コードを明示的に指定する手順
文字化けを根本的に解決するには、Power Queryのソースステップでエンコードを正しく指定します。以下の手順で行ってください。
- Power Queryエディターで該当クエリを開き、「適用されたステップ」から「ソース」を選択します。
- 数式バーの内容をコピーし、メモ帳などに一時保存します(例:
= Csv.Document(File.Contents("https://...”)))。 - 数式バーを直接編集し、
Csv.Documentの第2引数にレコードを追加します。カンマで区切って[Delimiter=",", Encoding=932]のように指定します。 - Enterキーを押すと、エンコードが変更されてプレビューが更新されます。文字化けが解消されたら、そのままクエリを保存します。
- もしエラーが発生する場合は、Encodingの値を65001に変更して再試行します。ファイルがShift_JISの場合は932、UTF-8の場合は65001です。
注意:OneDrive上のファイルパスはURL形式(https://…)になることがありますが、この方法はローカルパスでも同じです。また、クエリを更新するたびに毎回同じエンコードで読み込まれるようになります。
5. 文字コードとBOMの有無による比較表
以下の表は、代表的な文字コード設定とPower Queryでの挙動をまとめたものです。自分のファイルがどのパターンに該当するか確認してください。
| 文字コード | BOM有無 | PowerQuery自動判別結果 | 推奨Encoding値 |
|---|---|---|---|
| UTF-8 | あり | 正しくUTF-8と認識 | 65001 |
| UTF-8 | なし | Shift_JISなど誤認識される可能性大 | 65001 |
| Shift_JIS | なし(通常) | UTF-8と誤認識して文字化け | 932 |
| UTF-16LE | あり(通常) | 正しくUTF-16と認識 | 1200 |
6. 失敗パターンと管理者へ確認する情報
実際の業務でよくある失敗パターンをいくつか紹介します。また、社内のルールでPower Queryの設定を変更できない場合や、OneDriveの同期設定に関する情報が必要な場合は、管理者に以下の点を確認してください。
失敗パターン1: 一度エンコードを間違えて保存してしまった
Power Queryでエンコードを誤ったまま「閉じて読み込む」を実行すると、その後の手動修正が難しくなります。クエリの設定を元に戻すには、「クエリと接続」から該当クエリを削除し、再度作成し直す必要があります。必ずプレビューで文字化けが解消されたことを確認してから読み込んでください。
失敗パターン2: OneDriveの「ファイルをオンデマンドで同期」が原因
OneDriveの設定で、「ファイルをオンデマンドで同期する」が有効になっていると、クラウド上のファイルの一部しかローカルにダウンロードされず、Power Queryが不完全なファイルを読み込むことがあります。この場合、エクスプローラーで該当ファイルを右クリックし、「常にこのデバイスに保持」を選択してからクエリを更新すると改善します。
管理者へ確認する情報
- CSVファイルの出力元システムの文字コード設定(多くの場合はShift_JISかUTF-8)
- Power Queryのエンコード指定が組織のポリシーで制限されていないか
- OneDriveの同期設定で「ファイルをオンデマンドで同期」が強制適用されているかどうか
- 社内でCSVファイルにBOMを付与するルールがあるかどうか
7. よくある質問(FAQ)
Q1. Power Queryで文字コードを指定しても文字化けが直らない場合、どうすればいいですか?
A. まずCSVファイル自体をメモ帳で開き、文字コードが本当に指定したものと一致しているか確認してください。また、区切り文字がカンマ以外(タブなど)の可能性もあるため、Delimiterの指定も見直します。それでも直らない場合は、ファイルの先頭に不要なバイトが含まれていないかバイナリエディタで確認するか、ファイルを新規作成し直すことをお勧めします。
Q2. OneDrive上のファイルをPower Queryで読み込む時、URLパスとローカルパスでは挙動が違いますか?
A. 違いはほとんどありません。ただし、URLパスを使用する場合は認証が必要な場合があり、Power Queryのデータソース設定で資格情報を正しく設定する必要があります。初回接続時にサインインを求められることがあります。
Q3. 文字コードの指定を数式で行ったが、クエリを更新するたびにリセットされてしまいます。
A. 数式バーを編集した後、必ず「閉じて読み込む」または「閉じて次へ読み込む」を実行してクエリを保存してください。また、OneDriveのファイルパスが変更された場合も設定が失われることがあります。元の数式をメモ帳などに保存しておくと安心です。
まとめ
Power QueryでOneDrive上のCSVが文字化けする場合、まずファイルの実際の文字コードを確認し、Power Queryのソースステップで明示的にEncodingを指定することで解決できます。特にShift_JISのCSVファイルはUTF-8と誤認されやすいため、Encoding=932を設定することを検討してください。また、OneDriveの同期設定が原因で不完全なファイルが読み込まれることもあるため、ファイルをローカルに完全に保持する設定にしておくとトラブルを減らせます。組織内でCSVの文字コードルールが統一されていない場合は、管理者と相談してBOM付きUTF-8に統一することを推奨します。
ADVERTISEMENT
超解決 Excel・Word研究班
企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。
Office・仕事術の人気記事ランキング
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【PDF】PDFのサムネイルプレビューが表示されない!エクスプローラーの設定とAcrobat環境設定
- 【Excel】文字がセルの枠からはみ出す・隠れる!「折り返して表示」と「縮小して全体を表示」の使い分け
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Outlook】宛先が「オートコンプリート」に出ない・間違っている時の修正手順|履歴の削除と再構築
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
