ターゲット テーブル下の最初の空のセルにデータを貼り付けるだけで、1 つのテーブルの行を別のテーブルに結合 (結合) できます。 新しい行が含まれるようにテーブル サイズが大きくなります。 両方のテーブルの行が一致している場合は、テーブルの右側の最初の空のセルに貼り付けて、一方のテーブルの列を別のテーブルと結合できます。 この場合も、新しい列に合わせてテーブルが大きくなります。
より大きなデータセットや複雑なデータセットの場合は、Excel の他のツールを使用してテーブルを組み合わせることもできます。
行のマージは実際には非常に簡単ですが、一方のテーブルの行が他方のテーブルの行と対応していない場合、列のマージは難しい場合があります。 VLOOKUP などの参照関数を使用すると、配置の問題の一部を回避できます。
VLOOKUP 関数を使用して 2 つのテーブルをマージする
次に示す例では、以前は "Blue" と "Orange" という別 の名前が付けられていた 2 つのテーブル が表示されます。青いテーブルでは、各行は注文の品目です。 つまり、オーダー ID 20050 には 2 つのアイテムがあり、オーダー ID 20051 には 1 つのアイテムがあり、オーダー ID 20052 には 3 つのアイテムがあります。 オレンジ色のテーブルの [注文 ID] 列の一致する値に基づいて、[売上 ID] 列と [地域] 列を青いテーブルにマージします。
青いテーブルではオーダー 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" 列と "地域" 列から正しい値を取得します。
操作手順を次に示します。
- オレンジ色の表の見出し [売上 ID] と [地域] をコピーします (この 2 つのセルのみ)。
- 青い表の [製品 ID] 見出しの右側のセルに見出しを貼り付けます。
これで、青いテーブルは、新しい Sales ID 列と Region 列を含めて 5 つの列幅になっています。 - 青いテーブルの [売上 ID] の最初のセルで、次の数式の記述を開始します。
=VLOOKUP( - [青] テーブルで、[受注 ID] 列の最初のセル 20050 を選びます。
部分的に完了した数式は次のようになります。
[@[Order ID]] の部分は、"この同じ行の値を [注文 ID] 列から取得する" という意味です。
コンマを入力し、マウスで Orange テーブル全体を選択すると、数式に "Orange[#All]" が追加されます。 - 次のように、別のコンマ、2、別のコンマ、0 を入力します
- Enter キーを押すと、次のように完成した数式が表示されます。
Orange[#All] の部分は、"オレンジ色の表のすべてのセルを見る" という意味です。2 は "2 列目の列から値を取得する" ことを意味し、0 は "完全に一致する場合にのみ値を返す" ことを意味します。
Excel が VLOOKUP 数式を使用して、その列の下のセルを入力します。 - 手順 3 に戻りますが、今度は [地域] の下の最初のセルに同じ数式の書き込みを開始します。
- 手順 6 で、2 を 3 に置き換えて、完成した数式は次のようになります。
この数式と最初の数式には 1 つだけ違いがあります。最初の数式は Orange テーブルの列 2 から値を取得し、2 番目の数式は列 3 から値を取得します。
これで、青いテーブルの新しい列のすべてのセルに値が表示されます。 VLOOKUP 数式が含まれていますが、値が表示されます。 これらのセル内の VLOOKUP 数式を実際の値に変換します。 - 「売上 ID」列のすべての値セルを選択し、Ctrl+C を押してコピーします。
- [貼り付け] の下にある [ホーム>矢印] を選択します。
- [貼り付け] ギャラリーで、[ 値の貼り付け] をクリックします。
- [地域] 列のすべての値のセルを選択してコピーし、手順 10 と 11 を繰り返します。
これで、2 つの列の VLOOKUP 数式が値に置き換えられました。
テーブルと VLOOKUP の詳細
- 行および列を追加してテーブルのサイズを変更する
- Excel テーブルの数式で構造化参照を使う
- VLOOKUP: 用途と使い方 (トレーニング コース)
- Excel の Copilot の使用を開始する
補足説明
Excel 技術コミュニティの専門家にいつでも質問するか、コミュニティでサポートを受けることができます。