2017-10-20 7 views
0

私は2枚あります。 1つは子テーブルで、もう1つはマスターテーブルです。マスターテーブルシートにあるマスターテーブルからmaster_idを取得する必要があります。EXCEL:VlookupとMatch機能 - 隣のセル値を取得する

以下に示すように、私はこれをExcel: Check if Cell value exists in Column, and then get the value of the NEXT Cellから得る式で、それは私のために働かなかった。

ありがとうございます。

子テーブル

A    B    C 
child_id  reference_no  master_id 
1    2017001   =IF(MATCH(B2,master.B2:B15,1), "NO MATCH", VLOOKUP(B2,master.A2:B15,2,0)) 
2    2017002   NO MATCH 

マスター表

A    B 
master_id  reference_no 
a1   2017002 
a2   2017003 

答えて

1

INDEXは、テーブル内の特定の行を返します。

MATCHは、テーブル内の値の位置を返します。

あなたがそれらを一緒に使用したい:

IndexMatch

1

は何をしようとすると、問題はその後VLOOKUP最初の列のキーを検索し、が与えられるということですその列の値またはすぐ右の列のいずれかを返すオプション。しかし、あなたのMasterテーブルには、カラムがBであり、値がカラムAで、それが後方にあります。

マスター表

A    B 
reference_no master_id 
2017002  a1 
2017003  a2 

を次にあなたの子供のスプレッドシートの列Cに次の式を入力することができます:

私は次のようにリファクタリングマスター・スプレッドシートをすることをお勧めかもしれません

=IFERROR(VLOOKUP(B2,master.A2:B10,2,FALSE),"Not found") 

マスタースプレッドシートを変更できない/できない場合は、回避策はありますが、上記のq.v.よりも式が複雑です。ここで:

https://superuser.com/questions/645039/excel-vlookup-by-second-column-using-table-name-as-range

関連する問題