メインコンテンツへスキップ

INDEXとMATCHでテーブルを結合する

Author: Amanda Li Last Modified: 2025-05-23

たとえば、共通の列を持つ2つ以上のテーブルがあり、その共通列のデータが同じ順序で並んでいない場合があります。このような場合、データを照合しながらテーブルを結合、統合、または連結するには、INDEX関数とMATCH関数を使用できます。

merge tables with index and match 1

INDEXとMATCHでテーブルを結合するにはどうすればよいですか?

上記のスクリーンショットに示されているように、新しいテーブルにすべての情報を統合するために表1と表2を結合するには、まず表1または表2から新しいテーブルにデータをコピーする必要があります(ここでは表1からコピーしました。下のスクリーンショットを参照)。新しいテーブルの最初の学生ID 23201を例として、INDEX関数とMATCH関数は次のようにしてそのスコアとランク情報を取得します: MATCHは、表2内の23201と一致する学生IDの行位置を返します。この行情報は、指定された列(スコアまたはランク列)との交差点にある値を取得するためにINDEXに渡されます。

merge tables with index and match 2

汎用構文

=INDEX(戻りテーブル,MATCH(検索値,検索範囲,0),列番号)

√ 注: 表1の情報はすでに記載済みなので、今度は表2から対応するデータを取得するだけです。

  • 戻りテーブル: 学生のスコアを返すテーブル。ここでは表2を指します。
  • 検索値: 戻りテーブル内の情報を照合するために使用する値。ここでは新しいテーブル内の学生IDの値を指します。
  • 検索範囲: 検索値と比較する値を持つセルの範囲。ここでは戻りテーブル内の学生ID列を指します。
  • 列番号: 戻りテーブルのどの列から対応する情報を返すかを示す列番号。
  • 0: マッチタイプ0は、MATCH関数に完全一致を実行させるために必要です。

新しいテーブルにすべての情報を統合するために表2から対応するデータを取得するには、以下の数式をセルF16およびG16にコピーまたは入力し、Enterキーを押して結果を得てください:

セルF16(スコア)
=INDEX($F$5:$H$11,MATCH(C16,$F$5:$F$11,0),2)
セルG16(ランク)
=INDEX($F$5:$H$11,MATCH(C16,$F$5:$F$11,0),3)

√ 注: 上記のドル記号($)は絶対参照を示しており、数式を他のセルに移動またはコピーしても戻りテーブルと検索範囲が変更されません。ただし、検索値にはドル記号が追加されていません。これは、それが動的であることを意図しているためです。数式を入力した後、フィルハンドルを下にドラッグして数式を下のセルに適用します。

merge tables with index and match 3

数式の説明

ここでは、以下の数式を例として使用します:

=INDEX($F$5:$H$11,MATCH(C16,$F$5:$F$11,0),2)

  • MATCH(C16,$F$5:$F$11,0): マッチタイプ 0は、MATCH関数に完全一致を実行させます。この関数は、検索範囲$F$5:$F$11内で23201C16の値)の一致値の位置を返します。そのため、関数は一致値が範囲内の3番目の位置にあるため「3」を返します。
  • INDEX($F$5:$H$11$F$5:$H$11,MATCH(C16,$F$5:$F$11,0),22) = INDEX($F$5:$H$11$F$5:$H$11,3,22): INDEX関数は、戻りテーブル $F$5:$H$113行目と2列目の交差点にある値を返します。この値は「91」です。

関連する関数

Excel INDEX関数

ExcelのINDEX関数は、範囲または配列からの指定された位置に基づいて表示される値を返します。

Excel MATCH関数

ExcelのMATCH関数は、特定の値をセル範囲で検索し、その値の相対的な位置を返します。


関連する数式

INDEXとMATCHによる完全一致

特定の製品、映画、人物などのExcelにリストされている情報を確認する必要がある場合は、INDEX関数とMATCH関数の組み合わせをうまく活用する必要があります。

INDEXとMATCHによる近似一致

従業員のパフォーマンスを評価したり、学生の成績を評価したり、重量に基づいて郵便料金を計算したりするために、Excelで近似一致を見つける必要がある場合があります。このチュートリアルでは、必要な結果を取得するためにINDEX関数とMATCH関数を使用する方法について説明します。

複数の基準に基づく最も近い一致値の検索

場合によっては、複数の基準に基づいて最も近いまたは近似の一致値を検索する必要があります。INDEX、MATCH、IF関数を組み合わせることで、Excelでこれを迅速に行うことができます。


最高のOffice生産性ツール

Kutools for Excel - あなたを群衆から際立たせるツール

🤖 Kutools AI アシスタント: 次の要素に基づいてデータ分析を革新:インテリジェント実行   |  コード生成  |  カスタム数式の作成  |  データの分析とチャートの生成  |  Kutools 拡張機能の呼び出し
人気の機能重複の検索、ハイライト、または識別  |  空白行の削除  |  データを失うことなく列やセルを結合  |  数式なしで丸める ...
スーパーフィルター複数条件  |  複数値  |  複数シート間  |  ファジーマッチ...
高度なドロップダウンリスト簡単なドロップダウンリスト  |  依存するドロップダウンリスト  |  複数選択可能なドロップダウンリスト...
列マネージャー特定の数の列を追加  |  列の移動  |  非表示列の可視性ステータスの切り替え  列を比較して同じおよび異なるセルを選択 ...
注目機能グリッドフォーカス  |  デザインビュー  |  強化された数式バー  |  ワークブックとシートの管理 | オートテキスト ライブラリ (Auto Text)  |  日付ピッカー  |  データの統合  |  セルの暗号化/復号化  |  リストによるメール送信  |  スーパーフィルター  |  特殊フィルタ(太字/斜体/取り消し線のフィルタリング...) ...
トップ15のツールセット12 のテキストツールテキストの追加特定の文字を削除 ...)  |  50 以上 のグラフタイプガントチャート ...)  |  40 以上の実用的な数式誕生日に基づいて年齢を計算 ...)  |  19 の挿入ツールQRコードの挿入パスからの画像挿入 ...)  |  12 の変換ツール単語に変換する通貨変換 ...)  |  7 つの結合と分割ツール高度な行のマージExcelセルの分割 ...)  |  ... さらに

Kutools for Excelは300以上の機能を誇り、必要なものがワンクリックで手に入ります...


Office Tab - Microsoft Office(Excel含む)でのタブ形式の閲覧と編集を有効にする

  • 数十の開いている文書間を1秒で切り替え!
  • 毎日数百回のマウスクリックを減らし、マウス手にさよならを告げる。
  • 複数の文書を閲覧・編集する際に、生産性が50%向上します。
  • Chrome、Edge、Firefoxのように、Office(Excel含む)に効率的なタブをもたらします。