更新と管理 ― 接続・エラー対策・設計パターン
このページのゴール
Power Queryの更新方法、読み込み先の使い分け、エラーの予防・対処法、複数クエリの設計パターンを理解し、長期運用に耐えるクエリを作れるようになることです。
クエリの更新方法
| 方法 | 操作 | 範囲 |
|---|---|---|
| すべて更新 | データ タブ → すべて更新(Ctrl+Alt+F5) | ブック内の全クエリ |
| 個別更新 | クエリ結果のテーブル上で右クリック →「更新」 | そのクエリだけ |
| バックグラウンド更新 | クエリのプロパティ →「バックグラウンドで更新する」にチェック | 更新中もExcel操作が可能になる |
| ファイルを開いたとき自動更新 | クエリのプロパティ →「ファイルを開くときにデータを更新する」にチェック | ブックを開いただけで自動更新 |
プロパティの開き方
データ タブ → クエリと接続 → 右パネルでクエリを右クリック →「プロパティ」
実務のコツ:定期レポートには「開いたとき自動更新」
毎朝開くレポートブックなら「ファイルを開くときにデータを更新する」を有効にすると、開くだけで最新データに切り替わります。
毎朝開くレポートブックなら「ファイルを開くときにデータを更新する」を有効にすると、開くだけで最新データに切り替わります。
読み込み先の選び方
| 読み込み先 | 特徴 | 使いどころ |
|---|---|---|
| テーブル | シートにExcelテーブルとして出力。最も標準的。 | 結果をシートに表示して関数やグラフで活用したいとき |
| ピボットテーブル | ピボットテーブルのデータソースとして直結。 | 集計・分析をピボットテーブルで行いたいとき |
| 接続のみ | シートにデータを出力しない。クエリの結果はメモリ上に保持される。 | 中間加工用クエリ、パラメータクエリ、他のクエリの参照元 |
| データモデルに追加 | Power Pivotのデータモデルに読み込む。104万行超のデータ、複数テーブルのリレーションが必要な場合。 | 大量データの分析、DAX関数を使いたいとき |
設計の原則:中間クエリは「接続のみ」、最終出力だけをテーブルに
クエリが5個以上になってくると、すべてをシートに出力するとブックが重くなります。データ加工途中のクエリは「接続のみ」にし、最終結果のクエリだけを「テーブル」や「ピボットテーブル」に出力するのが効率的です。
クエリが5個以上になってくると、すべてをシートに出力するとブックが重くなります。データ加工途中のクエリは「接続のみ」にし、最終結果のクエリだけを「テーブル」や「ピボットテーブル」に出力するのが効率的です。
よくあるエラーと対処法
| エラー | 原因 | 対処法 |
|---|---|---|
| DataSource.Error:ファイルが見つかりません | 参照先ファイルが移動・削除・名前変更された | ファイルを元の場所に戻す。パスが変わった場合はソースステップのパスを修正。パラメータクエリでパスを管理している場合はパラメータテーブルを更新。 |
| Expression.Error:列 'XXX' が見つかりません | 元データの列名が変わった、または列が削除された | ソースデータの列名を元に戻すか、クエリの該当ステップを修正。「他の列の削除」で列名を明示指定している場合は、その列名リストを更新する。 |
| DataFormat.Error:データの変換中にエラー | データ型の変換に失敗(テキストを日付に変換できない行がある、など) | エラー行を確認 → 型変更前に値の置換でデータを修正するか、型変更後に「エラーの置換」でnullに変換する。 |
| Formula.Firewall:プライバシーレベルの問題 | 異なるデータソース(ローカルファイルとWebなど)を1つのクエリで混在させた | ファイル → オプションと設定 → クエリのオプション → プライバシー →「プライバシーレベルの設定を無視する」にチェック。社内利用なら実用上問題なし。 |
複数クエリの設計パターン
ステージングパターン
データの取り込みと変換を分離する設計です。
| クエリ層 | 役割 | 読み込み先 |
|---|---|---|
| ステージングクエリ(stg_売上、stg_マスタ) | データソースからの取り込みだけ行い、最低限の型変換のみ | 接続のみ |
| 変換クエリ(trn_売上加工) | ステージングクエリを参照し、フィルター・列追加・マージなどの変換を行う | 接続のみ |
| 出力クエリ(out_月次レポート) | 変換クエリを参照し、最終的な出力形式に整える | テーブル or ピボットテーブル |
なぜ分離するか
ソースの変更(ファイルパスや列名の変更)が発生した場合、ステージングクエリだけ修正すれば後続の変換・出力クエリには影響しません。クエリ数が10を超えるような大規模な構成では、この設計が保守性を大幅に向上させます。
ソースの変更(ファイルパスや列名の変更)が発生した場合、ステージングクエリだけ修正すれば後続の変換・出力クエリには影響しません。クエリ数が10を超えるような大規模な構成では、この設計が保守性を大幅に向上させます。
命名規則
| プレフィックス | 意味 | 例 |
|---|---|---|
| stg_ | ステージング(取り込み) | stg_売上CSV |
| trn_ | 変換(トランスフォーム) | trn_売上加工 |
| out_ | 出力 | out_月次集計 |
| prm_ | パラメータ | prm_対象月 |
クエリの整理
グループフォルダで分類する
エディターの左パネルでクエリを右クリック → 「グループに移動」→「新しいグループ」で、フォルダを作ってクエリを分類できます。「01_ステージング」「02_変換」「03_出力」「99_パラメータ」のようにフォルダ分けすると、見通しがよくなります。
クエリの複製と参照
クエリを右クリック →「複製」はクエリ全体のコピーを作ります。「参照」は既存のクエリの最終結果を入力として使う新しいクエリを作ります。ステージングパターンでは「参照」を使って変換クエリを作ります。
まとめ
Power Queryは作って終わりではなく、長期運用するツールです。更新方法を理解し、読み込み先を使い分け(中間は接続のみ、最終だけテーブル)、よくあるエラーの対処法を知り、クエリが増えてきたらステージングパターンで設計を整理する。この4つの管理スキルが、Power Queryを「便利だけど壊れやすいもの」から「信頼できる業務基盤」に変えます。