複数のテーブルを結合する方法

適用先
Excel for Microsoft 365 Excel 2024 Excel 2021

ターゲット テーブル下の最初の空のセルにデータを貼り付けるだけで、1 つのテーブルの行を別のテーブルに結合 (結合) できます。 新しい行が含まれるようにテーブル サイズが大きくなります。 両方のテーブルの行が一致している場合は、テーブルの右側の最初の空のセルに貼り付けて、一方のテーブルの列を別のテーブルと結合できます。 この場合も、新しい列に合わせてテーブルが大きくなります。

より大きなデータセットや複雑なデータセットの場合は、Excel の他のツールを使用してテーブルを組み合わせることもできます。

行のマージは実際には非常に簡単ですが、一方のテーブルの行が他方のテーブルの行と対応していない場合、列のマージは難しい場合があります。 VLOOKUP などの参照関数を使用すると、配置の問題の一部を回避できます。

VLOOKUP 関数を使用して 2 つのテーブルをマージする

次に示す例では、以前は "Blue" と "Orange" という別 の名前が付けられていた 2 つのテーブル が表示されます。青いテーブルでは、各行は注文の品目です。 つまり、オーダー ID 20050 には 2 つのアイテムがあり、オーダー ID 20051 には 1 つのアイテムがあり、オーダー ID 20052 には 3 つのアイテムがあります。 オレンジ色のテーブルの [注文 ID] 列の一致する値に基づいて、[売上 ID] 列と [地域] 列を青いテーブルにマージします。

2 つの列を別のテーブルに結合する  

青いテーブルではオーダー ID の値は繰り返されますが、オレンジ色のテーブルのオーダー ID 値は一意です。 オレンジ色の表からデータをコピーして貼り付けるだけでは、注文 20050 の 2 番目の品目の売上 ID と地域の値が 1 行ずれ、青いテーブルの新しい列の値が変更されます。

青いテーブルのデータを次に示します。これを空白のワークシートにコピーできます。 ワークシートに貼り付けたら、Ctrl + T キーを押して表に変換し、 Excel の表の名前を青に変更します

受注 ID 販売日 製品 ID
20050 2/2/14 C6077B
20050 2/2/14 C9250LB
20051 2/2/14 M115A
20052 2/3/14 A760G
20052 2/3/14 E3331
20052 2/3/14 SP1447
20053 2/3/14 L88M
20054 2/4/14 S1018MM
20055 2/5/14 C6077B
20056 2/6/14 E3331
20056 2/6/14 D534X

Orange テーブルのデータは次のとおりです。 それを同じワークシートにコピーします。 シートに貼り付けたら、Ctrl+T キーを押して表に変換し、表の名前を Orange に変更します。

受注 ID Sales ID 地域
20050 447 西部
20051 398 南部
20052 1006 北部
20053 447 西部
20054 885 東部
20055 398 南部
20056 644 東部
20057 1270 東部
20058 885 東部

各注文の販売 ID と地域の値が、それぞれの一意の注文明細行品目に正しく一致していることを確認する必要があります。 そのためには、表見出しの "売上 ID" と "地域" を青色の表の右側のセルに貼り付け、VLOOKUP 数式を使用して [オレンジ] テーブルの "売上 ID" 列と "地域" 列から正しい値を取得します。

操作手順を次に示します。

  1. オレンジ色の表の見出し [売上 ID] と [地域] をコピーします (この 2 つのセルのみ)。
  2. 青い表の [製品 ID] 見出しの右側のセルに見出しを貼り付けます。
    これで、青いテーブルは、新しい Sales ID 列と Region 列を含めて 5 つの列幅になっています。
  3. 青いテーブルの [売上 ID] の最初のセルで、次の数式の記述を開始します。
    =VLOOKUP(
  4. [青] テーブルで、[受注 ID] 列の最初のセル 20050 を選びます。
    部分的に完了した数式は次のようになります。部分 VLOOKUP 数式
    [@[Order ID]] の部分は、"この同じ行の値を [注文 ID] 列から取得する" という意味です。
    コンマを入力し、マウスで Orange テーブル全体を選択すると、数式に "Orange[#All]" が追加されます。
  5. 次のように、別のコンマ、2、別のコンマ、0 を入力します
  6. Enter キーを押すと、次のように完成した数式が表示されます。
    完成した VLOOKUP 数式のスクリーンショット。
    Orange[#All] の部分は、"オレンジ色の表のすべてのセルを見る" という意味です。2 は "2 列目の列から値を取得する" ことを意味し、0 は "完全に一致する場合にのみ値を返す" ことを意味します。
    Excel が VLOOKUP 数式を使用して、その列の下のセルを入力します。
  7. 手順 3 に戻りますが、今度は [地域] の下の最初のセルに同じ数式の書き込みを開始します。
  8. 手順 6 で、2 を 3 に置き換えて、完成した数式は次のようになります。
    値が置き換えられた完成した VLOOKUP 数式のスクリーンショット。
    この数式と最初の数式には 1 つだけ違いがあります。最初の数式は Orange テーブルの列 2 から値を取得し、2 番目の数式は列 3 から値を取得します。
    これで、青いテーブルの新しい列のすべてのセルに値が表示されます。 VLOOKUP 数式が含まれていますが、値が表示されます。 これらのセル内の VLOOKUP 数式を実際の値に変換します。
  9. 「売上 ID」列のすべての値セルを選択し、Ctrl+C を押してコピーします。
  10. [貼り付け] の下にある [ホーム>矢印] を選択します。
    [貼り付け] ボタンの下矢印
  11. [貼り付け] ギャラリーで、[ 値の貼り付け] をクリックします。
    オプション ギャラリーの [値の貼り付け] ボタン
  12. [地域] 列のすべての値のセルを選択してコピーし、手順 10 と 11 を繰り返します。
    これで、2 つの列の VLOOKUP 数式が値に置き換えられました。

テーブルと VLOOKUP の詳細

補足説明

Excel 技術コミュニティの専門家にいつでも質問するか、コミュニティでサポートを受けることができます。