ADVERTISEMENT

【Excel】ExcelでPower Queryのプレビューは正しいのに読み込み結果が古い時に見直すデータ設定

【Excel】ExcelでPower Queryのプレビューは正しいのに読み込み結果が古い時に見直すデータ設定
🛡️ 超解決

Power Queryを使ってデータを取り込む際、クエリエディタのプレビューでは最新のデータが正しく表示されているのに、Excelのワークシートに読み込んだ結果だけが古いままという現象に遭遇したことはありませんか。この問題は、データソースの更新タイミングやPower Queryの設定、Excelの計算オプションなど複数の要因が絡むため、原因の切り分けが重要です。本記事では、プレビューと読み込み結果が一致しない原因を体系的に解説し、会社のPCでも安全に確認・対処できる手順を紹介します。特に、管理者に確認が必要な設定にも触れながら、再発防止のポイントまで網羅します。

【要点】この記事で確認すること

  • 最初に見る場所: プレビューと読み込み結果の差異を確認し、まずはクエリの最新のプレビューが実際のデータソースと合致しているかどうかを検証します。
  • 切り分けの軸: 端末側(Excelの更新設定、キャッシュ)、アカウント側(データソースのアクセス権、接続設定)、管理設定側(グループポリシー、外部データ接続の制限)の3つで原因を分類します。
  • 注意点: 会社PCではレジストリやグループポリシーの変更は管理者に確認してから行ってください。特にPower Queryのバックグラウンド更新に関わる設定は、IT部門の許可なく変更しないでください。

ADVERTISEMENT

1. なぜプレビューと読み込み結果が異なるのか:根本原因の整理

Power Queryのプレビューは、クエリエディタを開いた時点でデータソースから最新のデータを取得して表示します。一方、ワークシートに読み込まれた結果は、「更新」操作やExcelの計算設定に依存して更新されるため、タイミングのズレが生じることがあります。具体的な原因としては、以下のような項目が考えられます。

  • クエリの更新が手動設定になっている: クエリプロパティで「バックグラウンド更新」が無効、または「更新時にこのクエリを更新する」がオフになっている可能性があります。
  • データソースの接続がキャッシュされている: Power Queryはデータソースへの接続情報をキャッシュすることがあり、特にODataやWebサービスなどの動的データで問題が発生しやすいです。
  • Excelの計算モードが「手動」になっている: シート内の数式やPower Queryの結果が自動再計算されないため、古い結果が表示され続けます。
  • クエリのステップに副作用がある: バッファリング(Table.Bufferなど)を使っている場合、プレビュー時にはバッファがリセットされるが、読み込み時には前回のバッファが残ることがあります。
  • 外部データ接続の権限問題: データソースへのアクセス権が変更された場合、プレビュー時はキャッシュされた権限で表示されるが、実際の更新では認証エラーが発生して古いデータが残ることがあります。
お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

2. 確認手順:プレビューと読み込み結果の不一致を調査する

問題を切り分けるために、以下の手順を順に実行してください。各手順の結果をメモしながら進めると、原因特定がスムーズです。

  1. プレビューの再確認と比較: クエリエディタを開き、最新のプレビューを表示します。次に、ワークシート上の該当テーブルを右クリックし「更新」を選択して、結果がプレビューと一致するか確認します。更新後に一致すれば、単に最後の更新から時間が経過していただけです。
  2. クエリプロパティの確認: リボンの「データ」タブ→「クエリと接続」をクリック。該当クエリを右クリック→「プロパティ」を開きます。「更新」タブで「バックグラウンド更新を有効にする」がオンになっているか、「このクエリを更新する」がチェックされているか確認します。会社PCでは管理者により無効化されている場合があるので注意してください。
  3. Excelの計算モードの確認: 「数式」タブ→「計算オプション」で「自動」が選択されているか確認します。「手動」になっている場合は「自動」に変更し、再計算を実行します(F9キー)。
  4. データソース接続のクリアと再設定: 「データ」タブ→「クエリと接続」→「接続」タブで該当接続を選択し、右クリック→「プロパティ」→「定義」タブで接続文字列が正しいか確認します。場合によっては「接続の削除」を行い、再度クエリを作成し直すと問題が解決することがあります。
  5. キャッシュのクリア: Power Queryには明示的なキャッシュクリア機能はありませんが、Excelを再起動することでキャッシュがリセットされます。また、データソースがデータベースの場合は、ODBCやOLE DBのドライバキャッシュが影響することもあるため、ODBCデータソースアドミニストレーターでキャッシュをクリアする方法も検討します(管理者権限が必要な場合あり)。

2-1. 特定のクエリだけ古い場合の追加確認

すべてのクエリではなく特定のクエリだけ古い結果になる場合、そのクエリ固有の問題が疑われます。クエリエディタで最終ステップの前に「Table.Buffer」などのバッファリング関数が使われていないか確認してください。バッファリングはパフォーマンス向上のために使われますが、読み込み時にキャッシュされたデータが使われるため、プレビューと結果が乖離することがあります。該当する関数を見つけたら、一時的に削除して動作を確認してください。

また、データソースの種類によっては、クエリの「データソース設定」で資格情報が保存されている場合、その資格情報が期限切れになっている可能性があります。「データ」タブ→「データソースの設定」で該当ソースの資格情報を編集・クリアして再度更新してみてください。

3. 代表的な失敗パターンとその対処法

よくある失敗例をいくつか挙げ、それぞれの対処法を示します。

失敗パターン 症状 主な原因と対処
バックグラウンド更新が無効 手動で更新しないと結果が変わらない。他のクエリは自動更新されるのに特定のクエリだけ古い。 クエリプロパティで「バックグラウンド更新を有効にする」をオンにする。会社PCでグレーアウトしている場合は管理者に依頼。
Excelの計算モードが手動 手動更新後に再計算しなければ最新にならない。他の操作(フィルターなど)でも古い値が表示される。 「数式」→「計算オプション」→「自動」に変更。または更新後にF9キーで再計算。
データソース認証の期限切れ プレビューでは見えるが、更新時にエラー「資格情報が必要です」が表示され古いデータが残る。 「データソースの設定」で資格情報を再入力。社内システムの場合はITに問い合わせてパスワードリセット。
クエリ内でのバッファリング クエリエディタでプレビューすると最新、ワークシートに読み込むと古い。ソートやフィルターが効かない。 Table.BufferやTable.BufferAsなどを使っている場合、削除して再試行。代替としてパフォーマンスを犠牲にしない方法を検討。
接続がキャッシュされたまま データソースが変更されたのに、Excelを再起動するまで反映されない。 Excelを再起動する。もしくは「データ」→「接続の編集」で接続文字列を確認し、問題があれば修正。

ADVERTISEMENT

4. 管理者へ確認すべき設定と情報

会社PCではグループポリシーやセキュリティ設定により、Power Queryの動作が制限されている場合があります。以下の項目について、管理者に確認または依頼する必要があります。

  • バックグラウンド更新の無効化: 管理者がグループポリシーで「Power Queryのバックグラウンド更新を許可しない」設定を有効にしている場合、ユーザー側で変更できません。この場合、手動更新しか手段がないため、管理者に設定緩和を依頼するか、都度手動更新で運用します。
  • 外部データ接続の制限: セキュリティポリシーにより、特定のデータソース(ファイル共有、データベース、Webサービスなど)への接続がブロックされていることがあります。プレビューはキャッシュで見えても、実際の更新ではエラーになる可能性があります。接続が拒否される場合は、管理者に該当ソースのホワイトリスト追加を依頼してください。
  • ODBC/OLEDBドライバのバージョン: 古いドライバを使っていると、Power Queryのデータ取得に不具合が生じることがあります。IT部門に最新ドライバのインストールを依頼しましょう。
  • レジストリによるキャッシュ設定: 一部の組織ではPower Queryのキャッシュ動作を制御するレジストリキーが設定されています(例:DisablePowerQueryBackgroundRefresh)。変更は管理者のみ可能です。

管理者に問い合わせる際には、「どのクエリで症状が発生するか」「プレビューでは正しく見えるが読み込みが古い」「手動更新で解決する場合がある」という具体的な情報を伝えると、スムーズに対応してもらえます。

5. よくある質問(FAQ)

Q1. プレビューと読み込み結果が異なる場合、毎回クエリエディタを開いて確認するのが面倒です。自動で一致させる方法はありますか?

根本的な原因を取り除くことが重要です。クエリプロパティで「バックグラウンド更新」を有効にし、Excelの計算モードを「自動」に設定することで、ファイルを開いたときや一定間隔で自動更新されるようになります。また、データソースの認証情報が保存されているか確認してください。

Q2. クエリエディタのプレビューですら古いデータが表示される場合はどうすればいいですか?

その場合は、データソース自体が更新されていない、またはクエリがデータソースに正しく接続できていない可能性があります。まず「データソースの設定」で接続テストを行い、次にデータソースの最新状態を直接確認してください。それでもプレビューが古い場合は、Excelを再起動し、キャッシュをクリアしてみてください。

Q3. 会社のPCで「バックグラウンド更新を有効にする」がグレーアウトしています。どうすればいいですか?

管理者がグループポリシーで無効化している可能性が高いです。個人で変更することはできませんので、IT部門に連絡して必要性を説明し、設定の緩和を依頼してください。代替案として、手動更新を日常業務に組み込むか、VBAマクロで定期的に更新する方法も検討できますが、マクロの使用許可が必要な場合があります。

Q4. 特定のクエリだけ古いのはなぜですか?

そのクエリ固有の設定か、データソースに問題がある可能性が高いです。クエリプロパティを確認し、バッファリング関数を使用していないかチェックしてください。また、データソースが他のクエリと異なる種類(Webサービスなど)の場合、認証やキャッシュの挙動が異なることがあります。

Q5. 更新時に「この操作は、現在のセキュリティ設定では許可されていません」と表示されます。

これは、Power Queryの外部データ接続が信頼されていないデータソースとして扱われていることを示します。Excelのセキュリティセンターで「外部データ接続」の設定を確認し、「すべての外部データ接続に対して、常に信頼する」を有効にする必要がありますが、会社PCでは変更できない場合があります。その場合はIT部門に連絡し、信頼済みのデータソースとして登録してもらいましょう。

6. まとめ

Power Queryのプレビューと読み込み結果が一致しない問題は、クエリの更新設定、Excelの計算モード、データソースの認証、バッファリングなど、いくつかの原因に集約されます。まずは本記事で紹介した確認手順を順に試し、原因を特定してください。多くの場合、クエリプロパティのバックグラウンド更新を有効にし、Excelの計算モードを自動にすることで解決します。会社PCで設定が変更できない場合は、管理者に適切な設定変更を依頼する必要があります。問題が解決しない場合は、クエリの作り直しやデータソースの再接続も検討してください。


📊
Excelトラブル完全解決データベースこの記事以外にも、様々なエラー解決策をまとめています。困った時の逆引きに活用してください。

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。

🏆
超解決 Excel検定 あなたのExcel実務能力を3分で測定!【1級・2級・3級】

ADVERTISEMENT