ADVERTISEMENT

【Excel】Power Queryで「キーがテーブルのどの行とも一致しません」と出る時の対処法

【Excel】Power Queryで「キーがテーブルのどの行とも一致しません」と出る時の対処法
🛡️ 超解決

Power Queryで2つのテーブルを結合しようとしたときに、「キーがテーブルのどの行とも一致しません」というエラーメッセージが表示されることがあります。このエラーは、結合の基準となるキー列の値が、結合先のテーブルに存在しない場合に発生します。初心者の方だとパニックになりがちですが、原因はいくつかのパターンに絞られるため、落ち着いて確認すれば解決できます。本記事では、このエラーの代表的な原因と、手順を追った対処法を詳しく解説します。会社のPCで作業されている方も、安全に修正できる方法を紹介しますので、ぜひ参考にしてください。

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

  • 最初に見る場所: Power Queryエディタの「適用したステップ」と「エラーの行」を確認します。どの行でエラーが起きているか特定することで、原因の切り分けが容易になります。
  • 切り分けの軸: データ型の不一致、余分なスペースや改行、大文字小文字の違い、キー値の重複の4つをチェックします。多くの場合、これらのいずれかが原因です。
  • 注意点: 会社の共有データソースを編集する場合は、元のデータを直接変更せず、Power Query側で変換を加えるようにしてください。また、管理者が設定したクエリを変更する際は、事前に許可を得るか、複製してから試すことをおすすめします。

ADVERTISEMENT

このエラーが発生する典型的なシチュエーション

Power Queryで「左外部結合」や「完全外部結合」など、キーに基づいてテーブルをマージする操作を行ったときに、このエラーが表示されることがほとんどです。例えば、売上トランザクションデータと顧客マスタを「顧客ID」で結合するケースを考えてみましょう。売上テーブルには存在する顧客IDが、顧客マスタには存在しない場合に、「キーがテーブルのどの行とも一致しません」というエラーが発生します。また、2つのテーブルを「追加」する場合には、通常このエラーは出ません。結合操作に特有のエラーであることを覚えておきましょう。

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

エラーの原因を切り分けるための確認手順

エラーの原因を特定するには、以下の4つのポイントを順に確認していくのが効率的です。それぞれについて、具体的な確認方法を説明します。

1. データ型の不一致を確認する

Power Queryでは、キー列のデータ型が異なると、値が同じであっても不一致と判断されます。例えば、一方のテーブルでは「12345」が数値型、もう一方では文字列型として保存されている場合、エラーになります。確認手順としては、Power Queryエディタで各テーブルのキー列を選択し、「ホーム」タブの「データの種類」を確認します。両方とも同じデータ型(例:どちらも「テキスト」またはどちらも「整数」)になっているか確認してください。異なる場合は、一方を他方に変換します。

2. キー値に余分なスペースや改行が含まれていないか確認する

目に見えないスペースや改行も、エラーの原因になります。特に、CSVファイルや手入力されたデータでは、前後にスペースが入っていることがよくあります。Power Queryエディタで該当の列を右クリックし、「変換」→「トリム」を選択すると、前後のスペースを除去できます。また、「クリーン」を選択すると、印刷できない文字を削除できます。これらの処理を試してみてください。

3. 大文字と小文字の違いを確認する

Power Queryの結合はデフォルトで大文字と小文字を区別します。そのため、「ABC」と「abc」は異なるキーとして扱われます。もし大文字小文字の違いが原因であれば、両方のキー列を「大文字に変換」または「小文字に変換」してから結合するとエラーが解消されます。変換方法は、列を選択して「変換」タブから「大文字変換」または「小文字変換」を選びます。

4. キー値に重複行がないか確認する

結合の種類によっては、キーに重複があるとエラーになる場合があります。例えば、「左外部結合」では、左テーブルに重複キーがあっても問題ありませんが、右テーブルに重複キーがあると「キーがテーブルのどの行とも一致しません」というエラーが出ることがあります。これはPower Queryのバグではなく、結合の仕様によるものです。重複を確認するには、Power Queryエディタで「ホーム」タブの「行の削除」→「重複の削除」を適用するか、グループ化して件数をカウントします。

状況別の対処法比較表

原因 症状の特徴 対処法
データ型の不一致 数値とテキストなど、列のデータ型アイコンが異なる 一方のデータ型を他方に合わせる(例:テキストに統一)
余分なスペース・改行 値の前後に空白がある、またはセル内改行が含まれる 「トリム」と「クリーン」を適用する
大文字小文字の違い 見た目は同じだが、大文字と小文字が混在している 両方の列を「大文字変換」または「小文字変換」する
キー値の重複 一方のテーブルに同じキー値が複数存在する 重複を削除するか、集計して一意にする
実際にキー値が存在しない 参照先のテーブルに該当キーがそもそもない 結合の種類を変更するか、データソースを修正する

ADVERTISEMENT

具体的な修正手順

ここでは、実際の操作手順を5つのステップで説明します。会社のPCで作業する場合も、この手順であれば安全に修正できます。

  1. Power Queryエディタを開き、エラーが発生しているクエリを選択します。左側の「クエリ」ペインから該当のクエリをクリックします。
  2. 「適用したステップ」の一覧で、エラーが発生した直前のステップを確認します。多くの場合、「マージ」または「結合」のステップでエラーが表示されます。
  3. エラー行を特定するために、テーブルプレビューで「エラー」と表示されているセルをクリックします。これにより、どのキー値が問題かを把握できます。
  4. 上記の原因別対処法に従い、データ型の変換、トリム、大文字小文字変換、重複削除などを適用します。これらの変換は「変換」タブから行います。
  5. 再度「ホーム」タブの「閉じて読み込む」で結果を確認します。エラーが解消されていれば完了です。まだエラーが出る場合は、別の原因が考えられるため、再度原因の切り分けを行います。

よくある質問

Q1: このエラーはどのような意味ですか?
A: 結合しようとしたキー値が、結合先のテーブルに存在しないことを意味します。ただし、実際には存在していても、データ型やスペースなどの違いで一致しない場合も多いです。

Q2: 結合の種類を変えればエラーは解消されますか?
A: 場合によります。「左外部結合」から「完全外部結合」に変えると、エラーの代わりにnullが返されるため、見かけ上エラーが表示されなくなることがあります。しかし、データの整合性を損なう可能性があるため、根本原因を特定して修正することをおすすめします。

Q3: 重複行がある場合、どのように対処すればよいですか?
A: 重複行を削除するか、グループ化して1行に集約する方法があります。業務上重複が許容される場合は、重複をそのままにせず、事前に一意のキーに変換しておくと安全です。

管理者への確認が必要なケース

以下のような状況では、個人で修正せずに管理者に相談してください。

  • 共有のデータソース(データベースや共有フォルダのファイル)を変更する必要がある場合
  • 管理者が作成したPower Queryクエリを修正する場合(権限がないと上書き保存できないことがあります)
  • 結合対象のテーブルが他のユーザーによって同時に編集されている場合

管理者に伝えるべき情報としては、エラーが発生したクエリの名前、エラーメッセージのスクリーンショット、原因として疑われるポイント(データ型・スペースなど)を伝えるとスムーズです。

まとめ

Power Queryで「キーがテーブルのどの行とも一致しません」と表示された場合、まずはデータ型の不一致、余分なスペース、大文字小文字、重複キーの4つを順に確認しましょう。原因が特定できれば、Power Queryの変換機能を使って簡単に修正できます。どうしても解決しない場合は、管理者に相談することをためらわないでください。また、データの整合性を保つために、結合の種類を変更するだけの対処は避けたほうが良いでしょう。この記事の手順を参考に、冷静に対応してください。


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

ADVERTISEMENT

この記事の監修者
📈

超解決 Excel・Word研究班

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

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

ADVERTISEMENT