Power Queryで複数のデータソースを結合しようとしたときに、「Formula.Firewall」というエラーメッセージが表示されて処理が止まってしまうことがあります。このエラーは、異なるデータソース間のプライバシーレベル設定が原因で発生するもので、適切に設定すれば解決できます。本記事では、プライバシー設定の確認方法と、エラーを回避するための具体的な手順を解説します。会社のPCで作業されている方でも安心して対応できるよう、管理者への確認ポイントやよくある失敗パターンも含めて整理しました。
【要点】この記事で確認すること
- 最初に見る場所: ExcelのPower Queryエディター → 「ファイル」→「オプションと設定」→「クエリオプション」→「プライバシー」。
- 切り分けの軸: エラーが発生するクエリが単一データソースか複数データソースか、それぞれのプライバシーレベルが「なし」「プライベート」「組織」「パブリック」のどれに設定されているか。
- 注意点: プライバシーレベルを下げるとデータ漏洩のリスクが生じるため、会社のデータガバナンスポリシーに従い、自己判断で「なし」に変更しないでください。
ADVERTISEMENT
目次
1. Formula.Firewallエラーとは?原因を理解する
プライバシーレベルの基本
Power Queryには、データソースごとにプライバシーレベルを設定する機能があります。これは、異なるソース間でデータを結合する際に、データが意図せず外部に漏れるのを防ぐための仕組みです。プライバシーレベルには「なし」「プライベート」「組織」「パブリック」の4段階があります。「プライベート」は最も厳しく、他のソースとの結合が制限されます。「組織」は同じ組織内のソース同士で結合可能、「パブリック」はすべてのソースと結合できます。「なし」はプライバシー保護を無効にし、すべての結合を許可します。
エラーが発生するシナリオ
Formula.Firewallエラーは、主に次の状況で発生します。
- 異なるプライバシーレベルのデータソースを結合しようとしたとき(例:プライベートのソースとパブリックのソースをマージ)
- 同じソースでも、異なるデータベースやフォルダからのデータを結合する場合に、プライバシーレベルが適切に設定されていないとき
- 参照クエリ(他のクエリからの出力を参照するクエリ)と外部データソースを組み合わせたとき
これらのシナリオでは、Power Queryがデータソース間の境界を検出し、プライバシー保護のために結合をブロックします。その結果、Formula.Firewallエラーが表示されます。
2. プライバシー設定の確認手順(Windows / Excel)
現在のプライバシーレベルの確認方法
- エラーが発生しているExcelブックを開き、「データ」タブをクリックします。
- 「クエリと接続」をクリックして、クエリと接続ウィンドウを表示します。
- 該当のクエリを右クリックし、「編集」を選択してPower Queryエディターを開きます。
- Power Queryエディターの左上にある「ファイル」メニューをクリックし、「オプションと設定」→「クエリオプション」を選択します。
- 左側のナビゲーションペインで「プライバシー」をクリックします。
- 右側の「プライバシーレベル」セクションに、現在使用しているデータソースごとのプライバシーレベルがリスト表示されます。各ソースのレベルを確認してください。
- 必要に応じて、各ソースのプライバシーレベルを変更するか、「プライバシーレベルの設定を無視する」チェックボックスにチェックを入れます(後述の注意点を参照)。
- 「OK」をクリックして設定を保存し、クエリの実行を再試行します。
注意:プライバシーレベルを変更する際の判断基準
プライバシーレベルを「なし」に変更すると、データソース間のプライバシー保護が無効になり、外部へのデータ漏洩リスクが高まります。社内の機密データを扱う場合は、必ず管理者に確認してから変更してください。特に、個人情報や社外秘データを含むソースは「プライベート」のままにしておくのが安全です。
3. 一般的な失敗パターンと対処法
失敗パターン1: プライバシーレベルが「なし」または「プライベート」に設定されている
よくあるケースは、ユーザーが意識せずにデータソースを追加した際、Power Queryが自動的に「なし」や「プライベート」を割り当てている場合です。特に、ローカルファイル(CSV、Excelなど)は「なし」、データベースやWebサービスは「組織」または「パブリック」になることがあります。これらを結合しようとするとエラーになります。
対処法: 両方のデータソースのプライバシーレベルを「組織」または「パブリック」に統一します。ただし、会社のポリシーにより「プライベート」のままにする必要がある場合は、そのソースとの結合を避けるか、管理者に相談してください。
失敗パターン2: 同じブック内の別テーブルでも発生する
同じExcelブック内の異なるテーブルを結合する場合でも、Power Queryはそれぞれを独立したデータソースとみなすことがあります。例えば、シート1のテーブルとシート2のテーブルを結合する際に、一方が「なし」、もう一方が「組織」だとエラーが発生します。
対処法: 各テーブルのプライバシーレベルを確認し、同じレベルに設定します。通常は「組織」にすれば問題ありません。
失敗パターン3: 外部クエリと参照クエリの組み合わせ
参照クエリ(別のクエリの出力を参照するクエリ)を使う場合、元のクエリのデータソースと参照先のデータソースが異なるとエラーが発生しやすくなります。
対処法: 参照クエリを使用する代わりに、すべてのデータを一度のクエリで読み込むように設計し直すか、プライバシーレベルを統一します。
ADVERTISEMENT
4. 管理者向け:組織全体でプライバシー設定を管理する方法
組織としてPower Queryのプライバシー設定を管理したい場合、グループポリシーやレジストリを使用して強制することが可能です。管理者は次の情報を把握しておきましょう。
- レジストリキー:
HKEY_CURRENT_USER\Software\Microsoft\Office\16.0\Common\PowerQuery以下にプライバシーレベル関連の設定があります。ただし、直接編集は推奨されません。 - グループポリシー: Office管理用テンプレートを使用して、Power Queryの「プライバシーレベルの設定を無視する」を許可または禁止できます。
- 注意点: 安易に「プライバシーレベルの設定を無視する」を有効にすると、ユーザーが意図せずデータを漏洩させる可能性があります。機密データを扱う部署では、このオプションを無効にしておくことを推奨します。
ユーザーから「プライバシーレベルを変更してほしい」と相談があった場合、管理者はデータの種類と結合の必要性を評価し、適切なレベルを指示してください。また、社内のデータソース一覧と推奨プライバシーレベルをまとめたドキュメントを作成すると、問い合わせが減ります。
5. プライバシー設定とパフォーマンスのトレードオフ(比較表)
| プライバシーレベル | 説明 | データ結合時の動作 | セキュリティリスク | 推奨設定 |
|---|---|---|---|---|
| プライベート | 最も厳格な保護。同じソース内でのみ結合可能。 | 他のソースとの結合がブロックされる。 | 低い(データ漏洩なし) | 個人情報や機密データを含むソース |
| 組織 | 同じ組織内のソース同士で結合可能。 | 組織内の他のソースと結合できる。 | 中程度(組織内での漏洩リスクあり) | 社内システムや共有フォルダのデータ |
| パブリック | すべてのソースと結合可能。 | 外部ソースとも自由に結合できる。 | 高い(外部へのデータ漏洩リスク) | 公開データのみを扱う場合 |
| なし | プライバシー保護を無効化。 | すべての結合を許可。 | 非常に高い(制限なし) | 基本は非推奨。管理者の許可がある場合のみ |
この表からわかるように、セキュリティを優先するほど結合の自由度が下がり、パフォーマンスにも影響します(プライバシーレベルが低いほどPower Queryの最適化が働きにくくなる場合があります)。業務要件とセキュリティポリシーのバランスを考慮して設定してください。
6. よくある質問(FAQ)
Q1: プライバシー設定を無視するオプションを使ってもよいですか?
クエリオプションの「プライバシーレベルの設定を無視する」にチェックを入れると、すべてのプライバシー保護が無効になり、エラーは発生しなくなります。しかし、これはデータが外部に漏れるリスクを許容することになります。社内の機密データを扱う場合は、管理者の許可なしに使用しないでください。一時的な回避策として使うなら、作業後は必ずチェックを外しましょう。
Q2: エラーが出た時にすぐ試すべきことは?
まずはPower Queryエディターで各データソースのプライバシーレベルを確認し、すべてのソースが同じレベル(できれば「組織」)に設定されているか確認します。それでも解決しない場合は、各ソースのプライバシーレベルを手動で「組織」に変更してみてください。それでもダメな場合は、データソースの種類(例:ローカルファイル vs データベース)に違いがあるか確認し、必要に応じて「プライバシーレベルの設定を無視する」を一時的に有効にしてテストします。
SharePointリストは「組織」、オンプレミスのSQL Serverも「組織」に設定すれば、通常は結合できます。もしエラーが出る場合は、両方のデータソースが本当に同じ組織に属しているか確認し、ネットワークの制約がないか調べてください。それでも解決しない場合は、管理者にFirewallの設定や認証方法を相談しましょう。
7. まとめ
Formula.Firewallエラーは、Power Queryのプライバシー設定が原因で発生する一般的な問題です。原因を特定するためには、最初に各データソースのプライバシーレベルを確認し、必要に応じて統一するか「プライバシーレベルの設定を無視する」オプションを検討します。ただし、セキュリティリスクを考慮し、会社のポリシーに従って慎重に設定してください。また、管理者が組織全体の設定を統制することで、ユーザーからの問い合わせを減らし、安全なデータ統合環境を維持できます。本記事の手順を参考に、エラーを解決し、Power Queryを効率的に活用してください。
ADVERTISEMENT
超解決 Excel・Word研究班
企業のDX支援や業務効率化を専門とする技術者チーム。20年以上のExcel・Word運用改善実績に基づき、不具合の根本原因と最短の解決策を監修しています。ExcelとWordを使った「やりたいこと」「困っていること」「より便利な使い方」をクライアントの視点で丁寧に提供します。
Office・仕事術の人気記事ランキング
- 【Word】差し込み印刷で数字の桁を整える!金額にカンマ(桁区切り)を入れる設定
- 【Teams】メッセージを「保存済み」にして後で読む!重要なチャットをブックマークして整理する技
- 【PDF】PDFのサムネイルプレビューが表示されない!エクスプローラーの設定とAcrobat環境設定
- 【Copilot】「サービスに接続できません」エラーの原因切り分けと対処法
- 【Excel】文字がセルの枠からはみ出す・隠れる!「折り返して表示」と「縮小して全体を表示」の使い分け
- 【PDF】PDFに入力した文字の「フォント・サイズ・色」を変更するプロパティ設定
- 【Word】校閲機能の基本!赤字(変更履歴)とコメントで修正を見える化する
- 【Outlook】添付ファイルが「Winmail.dat」に化ける!受信側が困らない送信設定
- 【Outlook】宛先が「オートコンプリート」に出ない・間違っている時の修正手順|履歴の削除と再構築
- 【PDF】結合するPDFの「用紙サイズ」がバラバラな時、すべてを「A4サイズ」に強制リサイズしてから結合する
