※本ページにはプロモーション(広告)が含まれています
ExcelのPower Queryでデータ更新を実行すると、「タイムアウトしました」「接続エラーが発生しました」などのエラーが表示されて更新が失敗してしまう――。業務でPower Queryを活用している方にとって、これは非常に困る問題です。
Power Queryのタイムアウトや更新失敗は、接続先データソースの応答速度、タイムアウト設定値の不足、クエリの非効率な構造、認証情報の期限切れなど、複数の原因が絡み合って発生します。
この記事では、Power Queryの更新がタイムアウト・失敗する原因を体系的に解説し、初心者でも実践できる具体的な対処法をステップ形式で丁寧にご紹介します。2026年最新のExcel環境に対応した内容となっていますので、ぜひ最後までお読みください。

この記事でわかること
- Power Queryの更新がタイムアウトする主な原因7つ
- タイムアウト時間を延長する具体的な設定手順
- データソースの認証情報を再設定する方法
- クエリを最適化してパフォーマンスを改善するテクニック
- バックグラウンド更新やプライバシーレベルの見直し方
- Power Queryが頻繁に失敗する場合の根本的な対策
Power Queryの更新がタイムアウト・失敗する主な原因
Power Queryの更新エラーにはいくつかのパターンがあります。まず原因を正しく把握することが、効率的な解決への第一歩です。
原因1: タイムアウト設定値が短すぎる
Power Queryのデフォルトのタイムアウト値は、データソースの種類によって異なりますが、一般的に数分程度に設定されています。大量のデータを取得するクエリや、応答速度が遅いサーバーに接続している場合、このデフォルト値では時間が足りずにタイムアウトが発生します。
原因2: データソースの接続先が応答していない
接続先のデータベースサーバーやWebサービスがダウンしている、メンテナンス中である、またはネットワーク的に到達できない場合、当然ながらPower Queryの更新は失敗します。VPN経由でのアクセスが必要な環境で、VPNが切断されているケースも多いです。
原因3: 認証情報(資格情報)が期限切れ・無効
Power Queryはデータソースごとに認証情報(ユーザー名・パスワード、OAuthトークンなど)をキャッシュしています。パスワード変更やトークンの期限切れにより、保存された認証情報が無効になっていると接続に失敗します。
原因4: クエリの構造が非効率(クエリフォールディングが効かない)
Power Queryには「クエリフォールディング」という、フィルタや変換処理をデータソース側に委譲する最適化機能があります。この機能が効かないクエリ構造の場合、全データをローカルに読み込んでからフィルタリングするため、処理時間が大幅に長くなりタイムアウトしやすくなります。
原因5: プライバシーレベルの設定が不適切
Excelのプライバシーレベル設定(「プライベート」「組織」「パブリック」)が不適切だと、異なるプライバシーレベルのデータソースを結合する際にエラーが発生したり、データ転送が制限されたりします。「Formula.Firewall」エラーが表示される場合は、この設定が原因です。
原因6: バックグラウンド更新の競合
複数のクエリがバックグラウンドで同時に更新されると、リソースの競合や接続数の上限超過が起こり、一部のクエリがタイムアウトすることがあります。特に同じデータソースに対して複数のクエリが同時にアクセスする場合に発生しやすいです。
原因7: Excel・Power Queryのバージョンが古い
古いバージョンのExcelやPower Queryアドインを使用していると、既知のバグや互換性の問題により更新が失敗する場合があります。特にMicrosoft 365のアップデートで修正された接続関連のバグは多数あります。

対処法1: タイムアウト時間を延長する
最も基本的な対処法は、タイムアウトの制限時間を延長することです。Power Queryエディター内で設定を変更できます。
ステップ1: Power Queryエディターを開く
Excelで対象のブックを開き、リボンの「データ」タブ → 「クエリと接続」をクリックします。右側にクエリ一覧が表示されたら、問題のクエリをダブルクリックしてPower Queryエディターを開きます。
ステップ2: 詳細エディターでタイムアウト値を設定する
Power Queryエディターのリボンで「ホーム」→「詳細エディター」をクリックします。M言語のコードが表示されるので、データソースへの接続部分にタイムアウトオプションを追加します。
SQLデータベースの場合の例:
let
Source = Sql.Database("サーバー名", "データベース名",
[CommandTimeout = #duration(0, 0, 10, 0)])
// ↑ 10分にタイムアウトを延長
in
Source
Webデータソースの場合の例:
let
Source = Web.Contents("https://example.com/api/data",
[Timeout = #duration(0, 0, 5, 0)])
// ↑ 5分にタイムアウトを延長
in
Source
#duration(日, 時, 分, 秒)の形式で指定します。デフォルトの数分から10〜30分程度に延長すると、大量データの取得でもタイムアウトしにくくなります。
ステップ3: 変更を保存して更新をテストする
詳細エディターで「完了」をクリックし、「ホーム」→「閉じて読み込む」で変更を適用します。その後、クエリの更新を実行してタイムアウトが解消されたか確認しましょう。
対処法2: データソースの認証情報を再設定する
認証エラーや「資格情報が無効です」というメッセージが表示される場合は、保存された認証情報をリセットして再入力します。
ステップ1: データソース設定を開く
Power Queryエディターで「ホーム」→「データソース設定」をクリックします。または、Excelのリボンから「データ」→「データの取得」→「データソース設定」でも開けます。
ステップ2: 対象のデータソースの認証をクリアする
データソース一覧から問題のデータソースを選択し、「アクセス許可のクリア」ボタンをクリックします。これで保存された認証情報が削除されます。
ステップ3: クエリを再度更新して認証情報を再入力する
認証をクリアした状態でクエリの更新を実行すると、認証ダイアログが表示されます。正しいユーザー名・パスワード(またはOAuthログイン)で再度認証を行ってください。
ポイント
OAuth認証(Microsoft 365、Google系サービスなど)の場合、ブラウザでのログインが求められます。ポップアップブロッカーが有効だとログイン画面が表示されないことがあるため、一時的にブロッカーを無効にしてください。
対処法3: クエリを最適化してパフォーマンスを改善する
クエリの書き方を工夫することで、データ取得にかかる時間を大幅に短縮できます。
フィルタリングをできるだけ早い段階で適用する
Power Queryでは、処理ステップの順番が重要です。フィルタリング(行の絞り込み)や列の削除は、できるだけ最初の段階で行うことが鉄則です。先に全データを読み込んでから絞り込むのではなく、データソースから読み込む時点で必要なデータだけを取得するようにしましょう。
不要な列を早期に削除する
「列の削除」または「他の列の削除」ステップを、クエリのできるだけ前の方に配置します。不要な列を持ったまま後続の処理を行うと、メモリ消費量が増えてパフォーマンスが低下します。
クエリフォールディングが有効か確認する
Power Queryエディターの右側「適用したステップ」で各ステップを右クリックし、「ネイティブクエリを表示」がグレーアウトされていなければ、そのステップまでクエリフォールディングが有効です。グレーアウトされているステップがあれば、そこでフォールディングが切れています。
フォールディングが切れる一般的な原因:
- カスタム列の追加(M言語の独自関数を使用)
- テーブルのマージ(異なるデータソース間)
- データ型の変換(一部のケース)
- テキストの変換関数の使用
増分更新(インクリメンタルリフレッシュ)を活用する
毎回全データを取り直すのではなく、前回の更新以降に変更されたデータだけを取得するようにクエリを設計します。日付列でフィルタリングすることで、データ取得量を大幅に削減できます。

対処法4: バックグラウンド更新とプライバシーレベルを見直す
バックグラウンド更新を無効にする
複数クエリの同時更新による競合を避けるには、バックグラウンド更新を無効にして順次実行に切り替えます。
- Excelの「データ」タブ → 「クエリと接続」を開く
- 問題のクエリを右クリック → 「プロパティ」を選択
- 「使用法」タブで「バックグラウンドで更新する」のチェックを外す
- 「OK」をクリックして保存
この設定により、クエリは1つずつ順番に実行されるようになり、リソース競合によるタイムアウトが解消されます。
プライバシーレベルを「常にプライバシーレベルの設定を無視する」に変更する
「Formula.Firewall」エラーが出ている場合は、プライバシーレベルの制約を緩和します。
- Excelの「ファイル」→「オプション」→「トラストセンター」→「トラストセンターの設定」を開く
- 「プライバシーオプション」を選択
- 「常にプライバシーレベルの設定を無視する」にチェックを入れる
- 「OK」で保存
注意
プライバシーレベルを無視する設定は、異なるセキュリティレベルのデータソースを結合できるようにするものです。社内のセキュリティポリシーに従って判断してください。機密データを扱う場合は、この設定を有効にするのは推奨されません。
対処法5: 接続先サーバーとネットワーク環境を確認する
データソースの接続テスト
Power Queryとは別に、データソースへの接続が正常にできるか確認します。
- SQLサーバー: SQL Server Management Studio(SSMS)やAzure Data Studioで直接接続テスト
- Webサービス: ブラウザでURLにアクセスして応答があるか確認
- SharePoint/OneDrive: ブラウザでサイトにアクセスできるか確認
VPN・プロキシの確認
社内サーバーに接続する場合、VPNが正常に接続されているか確認してください。また、プロキシサーバー経由の接続では、プロキシの設定がPower Queryに正しく反映されていない場合にタイムアウトが発生します。
ファイアウォールの確認
WindowsファイアウォールやセキュリティソフトがExcelの通信をブロックしていないか確認します。Excel(EXCEL.EXE)の送受信を許可するルールが設定されているか確認してください。
対処法6: Excelとアドインを最新版に更新する
ステップ1: Excelのバージョンを確認する
Excelの「ファイル」→「アカウント」を開き、「Excelのバージョン情報」でバージョン番号を確認します。Microsoft 365を使用している場合は、「更新オプション」→「今すぐ更新」をクリックして最新版にアップデートしてください。
ステップ2: Power Queryアドインの確認(Excel 2016以前)
Excel 2016以前を使用している場合は、Power Queryが別途アドインとしてインストールされています。Microsoftの公式サイトから最新版のPower Queryアドインをダウンロードしてインストールしてください。
ステップ3: Officeの修復インストール
更新後も問題が続く場合は、Officeの修復を試します。
- Windowsの「設定」→「アプリ」→「インストールされているアプリ」を開く
- 「Microsoft 365」または「Microsoft Office」を見つけて「変更」をクリック
- 「オンライン修復」を選択して実行
対処法7: Power QueryのキャッシュをクリアするB
Power Queryは処理の高速化のためにキャッシュを保持していますが、このキャッシュが破損すると更新エラーの原因になります。
キャッシュのクリア手順
- Power Queryエディターを開く
- 「ファイル」→「オプションと設定」→「クエリのオプション」をクリック
- 左メニューの「データの読み込み」を選択
- 「キャッシュの管理」セクションで「キャッシュのクリア」をクリック
- Power Queryエディターを閉じて、クエリの更新を再実行
原因と対処法のまとめ
| 原因 | 対処法 | 難易度 |
|---|---|---|
| タイムアウト設定値が短い | CommandTimeoutを延長 | ★★☆☆☆ |
| 認証情報の期限切れ | データソース設定で再認証 | ★☆☆☆☆ |
| クエリが非効率 | フィルタリング早期適用・列削除 | ★★★☆☆ |
| プライバシーレベル設定 | プライバシーレベルを無視に設定 | ★☆☆☆☆ |
| バックグラウンド更新の競合 | バックグラウンド更新を無効化 | ★☆☆☆☆ |
| 接続先サーバーの問題 | サーバー・VPN・ファイアウォール確認 | ★★☆☆☆ |
| Excelのバージョンが古い | 最新版に更新・修復インストール | ★☆☆☆☆ |
| キャッシュの破損 | Power Queryキャッシュをクリア | ★☆☆☆☆ |
この記事に関連するおすすめ商品
できるPower BI データ集計・分析・可視化ノウハウが身に付く本
約2,500円
Power QueryとPower BIの基礎から実践まで網羅した入門書
Crucial DDR4-3200 16GB×2枚 デスクトップ用メモリ
約7,980円
大量データ処理にはメモリ増設が効果的。32GBで快適作業
Excel パワーピボット&パワークエリ 実践テクニック
約2,860円
Power Query+Power Pivotの実務活用テクニック集
※ 価格は変動します。最新価格はリンク先でご確認ください
よくある質問(FAQ)
Q. Power Queryのタイムアウト値はどのくらいに設定すればよいですか?
A. データ量や接続先の応答速度によりますが、まずは10分(#duration(0, 0, 10, 0))に設定してみてください。それでも不足する場合は30分程度まで延長します。ただし、タイムアウト値を長くしすぎると、本当に接続できない場合にも長時間待たされるため、バランスが重要です。
Q. 「Formula.Firewall」エラーが出るのはなぜですか?
A. 異なるプライバシーレベルのデータソースを1つのクエリ内で結合しようとした場合に発生します。対処法としては、プライバシーレベルの設定を「無視する」に変更するか、各データソースのプライバシーレベルを統一してください。
Q. クエリフォールディングが効いているか確認する方法は?
A. Power Queryエディターの右側「適用したステップ」で各ステップを右クリックします。「ネイティブクエリを表示」がクリックできる状態であれば、そのステップまでフォールディングが有効です。グレーアウトされている場合はフォールディングが切れています。
Q. SharePointリストへの接続でタイムアウトが頻発します。対策はありますか?
A. SharePointリストはアイテム数が5,000件を超えるとパフォーマンスが大幅に低下します。ビューでフィルタリングしたデータを取得するか、SharePoint REST APIを使ったカスタムクエリに切り替えることで改善できます。また、SharePoint Online側のリスト閾値設定も確認してください。
Q. 複数のクエリを順番に更新する方法はありますか?
A. 各クエリのプロパティで「バックグラウンドで更新する」のチェックを外すと、更新が順番に実行されます。また、VBAマクロを使って特定の順番でクエリを更新するスクリプトを作成することも可能です。
Q. Power QueryでODataソースに接続する際のタイムアウト設定は?
A. ODataソースの場合、OData.Feed関数に[Timeout = #duration(0, 0, 10, 0)]オプションを追加することでタイムアウト値を設定できます。ODataはページネーションが発生するため、全ページの取得に十分な時間を確保してください。
Q. Excel Onlineでもタイムアウト設定は変更できますか?
A. Excel Online(Web版Excel)のPower Queryは、デスクトップ版に比べて機能が制限されています。詳細エディターでのタイムアウト設定変更は、デスクトップ版Excelでのみ可能です。タイムアウトの問題が発生する場合は、デスクトップ版で設定を変更した後、OneDriveまたはSharePointに保存してください。
Q. Power Queryの更新を自動スケジュールで実行できますか?
A. デスクトップ版Excelでは、Windowsのタスクスケジューラとマクロを組み合わせて自動更新を実現できます。また、Power BIサービスにデータセットをアップロードすれば、1日最大8回までの自動更新スケジュールを設定できます(Pro版の場合)。
まとめ
ExcelのPower Query更新がタイムアウト・失敗する問題は、適切な設定変更とクエリの最適化で多くの場合解決できます。
まずはタイムアウト値の延長と認証情報の再設定という基本的な対処を試み、それでも改善しない場合はクエリの最適化(フィルタリングの早期適用、不要列の削除)に取り組みましょう。
また、バックグラウンド更新の無効化やプライバシーレベルの見直し、Excel自体のアップデートも効果的です。Power Queryは非常に強力なツールですので、正しく設定して業務の効率化に役立ててください。
minto.tech スマホ(Android/iPhone)・PC(Mac/Windows)の便利情報をお届け! 月間アクセス160万PV!スマートフォン、タブレット、パソコン、地デジに関する素朴な疑問や、困ったこと、ノウハウ、コツなどが満載のお助け記事サイトはこちら!