ADVERTISEMENT

【Excel】Power Queryでデータベースの列追加後に更新できない時の確認手順

【Excel】Power Queryでデータベースの列追加後に更新できない時の確認手順
🛡️ 超解決

Power Queryを使ってデータベースからデータを取り込み、クエリエディタで列を追加した後、更新を実行したときにエラーが発生するケースがあります。この問題は、データソース側の変更やPower Queryの設定が原因で起こることが多く、適切に切り分ければ修正が可能です。本記事では、原因の特定方法と具体的な対処手順を解説します。

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

  • 最初に見る場所: Power Queryのエラーメッセージとクエリのプレビュー。更新時に表示されるエラー詳細から、問題の箇所を特定します。
  • 切り分けの軸: データソース(データベース)側の変更、Power Queryのプライバシーレベル設定、クエリのステップ構成の3つに整理します。
  • 注意点: 会社の管理下にあるデータベースや共有クエリの場合、変更を加える前にデータベース管理者やチームと連携してください。無断で設定を変更すると、他のユーザーに影響が出る可能性があります。

ADVERTISEMENT

考えられる原因と初期切り分け

列追加後に更新できない原因は、主に以下のいずれかに該当します。まずはエラーメッセージの内容を確認し、原因の方向性を絞り込みます。

データベース側のテーブル定義変更

データベースにある元のテーブルで、列名やデータ型が変更されていたり、列自体が削除されている場合があります。Power Queryのクエリは元のテーブル構造を参照しているため、不一致が生じると更新時にエラーになります。特に、追加した列が元の列を参照する計算列の場合は、その基になる列が変更されると影響を受けます。

Power Queryのプライバシーレベル設定

複数のデータソースを結合しているクエリで、プライバシーレベルが適切に設定されていないと、データのマージや追加でエラーが発生します。デフォルトでは「高速結合」が無効になっている場合があり、そのせいで更新が失敗することがあります。

認証情報の期限切れまたは変更

データベースに接続するための認証情報(Windows認証やデータベース固有のログイン)が期限切れになったり、パスワードが変更された場合も更新できなくなります。

お探しの解決策が見つからない場合は、こちらの「Excelトラブル完全解決データベース」で他のエラー原因や解決策をチェックしてみてください。

エラーメッセージと初期切り分け手順

以下の手順でエラーの内容を詳細に確認し、原因を特定します。

  1. Excelで「データ」タブ →「クエリと接続」を開き、問題のクエリを右クリックして「最新の情報に更新」を選択します。更新に失敗した場合、表示されたエラーメッセージをメモします。
  2. Power Queryエディタを開き、クエリのプレビューを確認します。「エラー」と表示されているセルや行がないか確認します。
  3. エディタの「表示」タブから「詳細エディタ」を開き、クエリの各ステップを確認します。エラーが発生しているステップがハイライトされている場合があります。
  4. 同じデータベースにアクセスできる別のユーザー(同僚)に、同じクエリを更新してもらいます。再現するかどうかで、自分固有の問題か全員共通の問題かを切り分けます。
  5. データベース管理者に、元のテーブルに変更が加えられていないか確認を依頼します。

原因別の解決手順

原因ごとに適切な対処を行います。以下の比較表を参考に該当するケースを見つけてください。

原因 主な症状 解決策
テーブル列名の変更 エラー「列 ‘XXXX’ が見つかりません」 クエリ内で参照している列名を新しい名前に変更するか、元の列名に戻すよう管理者に依頼します。
データ型の不一致 エラー「データ型が一致しません」または変換エラー 該当列のデータ型を変更するか、元の型に合わせてクエリ内の型変換を見直します。
プライバシーレベルの不整合 「プライバシーの問題により、データソースを結合できません」という警告 「ファイル」→「オプションと設定」→「クエリオプション」→「プライバシー」で「高速結合を無視する」にチェックを入れ、該当クエリのプライバシーレベルを「パブリック」に設定します。
認証情報の期限切れ 「認証に失敗しました」または「データソースに接続できません」 データソース設定を開き、資格情報を再入力します。Windows認証を使っている場合は、ドメインパスワードを変更した後に再接続が必要です。

列名変更に対応する手順

エラーが特定の列名に関するものであれば、Power Queryエディタで該当ステップを探し、列名を修正します。手動で「名前の変更」ステップを追加するか、クエリ内で使われている列名を一括置換します。データベース管理者が列名を変更した場合は、変更後の正しい列名を確認してください。

プライバシーレベルを変更する手順

  1. Excelで「データ」タブから「クエリと接続」を開きます。
  2. 該当クエリを右クリックし「プロパティ」を選択します。
  3. 「権限」タブで、データソースごとにプライバシーレベルを「パブリック」に設定します。
  4. 「ファイル」→「オプション」→「クエリオプション」→「プライバシー」で、「高速結合を無視し、プライバシーレベルの警告を表示しない」にチェックを入れます。ただし、機密データを含む場合はこの設定を避けるか、IT部門の指示に従ってください。
  5. クエリを保存して再度更新を試みます。

ADVERTISEMENT

データベース管理者に確認すべき項目

問題がデータベース側にあると疑われる場合、管理者に以下の点を確認してください。

  • 対象テーブルで最近、列の追加・削除・名前変更・データ型変更があったかどうか。
  • ビューやストアドプロシージャを利用している場合、その定義に変更がないか。
  • 接続に使っているユーザーアカウントの権限に変更はないか(特定の列へのアクセス権が失われていないか)。
  • データベースサーバーの移行や再起動が行われたかどうか。

管理者に伝える際は、エラーメッセージの全文と、Power Queryのクエリのスクリーンショットを用意するとスムーズです。

失敗パターンから学ぶ注意点

よくある失敗パターンとして、以下のようなケースがあります。

  • エラーメッセージを読まずに「再試行」を繰り返し、設定を誤って変更してしまう。
  • プライバシーレベルを変更しても問題が解決しないのに、他の原因を探さずに設定を戻してしまう。
  • データベース管理者に確認せずに、自分でクエリ内の列名を推測で変更し、後でさらに大きなエラーを引き起こす。
  • Power Queryの「テーブルの結合」など複雑な操作を含む場合、計算列の依存関係を理解せずに修正し、結果が不正になる。

これらの失敗を避けるためにも、原因を一つずつ切り分けることが重要です。

よくある質問

Q1: 列追加後に更新できないエラーが「Expression.Error」と表示されます。どうすればいいですか?
A: 「Expression.Error」は、Power Query内で式の評価に失敗したときに発生します。詳細エディタでエラー行を確認し、該当するステップを修正します。多くの場合、列名のタイプミスや、列のデータ型が変わったことが原因です。

Q2: プライバシーレベルを変更しても更新できません。他に原因は考えられますか?
A: はい、プライバシーレベル以外にも認証情報の期限切れや、データベース側のテーブル構造変更が考えられます。一度データソースの接続を削除して再作成してみるのも手です。その際、既存のクエリは保持されます。

Q3: 他の同僚は更新できるのに、私だけ更新できません。なぜですか?
A: 原因として、あなたのアカウントのデータベース権限が変更された、またはExcelのローカル設定(プライバシーレベルなど)が異なる可能性があります。アカウント設定を確認し、他の人の設定と比較してみてください。

Q4: クエリに手を加えずに元の状態に戻したいのですが、どうすればいいですか?
A: クエリのバックアップを取っていない場合は、「クエリの複製」を作成しておくことをお勧めします。編集前に複製していれば、問題が起きた時に元のクエリに戻せます。また、変更履歴を残すためにPower Queryの「適用したステップ」欄をメモしておくと便利です。

まとめ

Power Queryでデータベースの列を追加した後に更新できない問題は、データベース側の変更、プライバシーレベル、認証情報の3つが主な原因です。エラーメッセージを正確に読み取り、原因を一つずつ切り分けることで、効率的に解決できます。管理者との連携を忘れずに行い、クエリの変更を行う前には必ずバックアップを取る習慣をつけましょう。本記事の手順を参考に、スムーズにトラブルシューティングを行ってください。


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

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

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

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

ADVERTISEMENT