EXCEL:Vlookup和Match函数-获取它旁边的单元格值

EXCEL:Vlookup和Match函数-获取它旁边的单元格值,excel,match,cell,vlookup,Excel,Match,Cell,Vlookup,我有两张床单。一个用于子表,另一个用于主表。我需要从主表工作表中的主表中获取主表id 正如你在下面看到的,用我从中得到的公式,它对我不起作用 多谢各位 子表 A B C child_id reference_no master_id 1 2017001 =IF(MATCH(B2,master.B2:B15,1), "NO MATCH", VLOOKUP(B2,maste

我有两张床单。一个用于子表,另一个用于主表。我需要从主表工作表中的主表中获取主表id

正如你在下面看到的,用我从中得到的公式,它对我不起作用

多谢各位

子表

    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
A             B
reference_no  master_id
2017002       a1
2017003       a2
主表

    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
A             B
reference_no  master_id
2017002       a1
2017003       a2

您尝试执行的操作的问题是
VLOOKUP
在第一列中搜索一个键,然后提供返回该列中的值或立即返回右侧列的选项。但是您的
Master
表将其向后放置,键位于列
B
中,值位于列
A

我可能建议您重构主电子表格,如下所示:

主表

    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
A             B
reference_no  master_id
2017002       a1
2017003       a2
然后,您可以在子电子表格的
C列中输入以下公式:

=IFERROR(VLOOKUP(B2,master.A2:B10,2,FALSE),"Not found")
如果您不能/不想更改主电子表格,有一些变通方法,但公式比我上面提到的更复杂,q.v.这里:


您尝试执行的操作的问题是
VLOOKUP
在第一列中搜索一个键,然后提供返回该列中的值或立即返回右侧列的选项。但是您的
Master
表将其向后放置,键位于列
B
中,值位于列
A

我可能建议您重构主电子表格,如下所示:

主表

    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
A             B
reference_no  master_id
2017002       a1
2017003       a2
然后,您可以在子电子表格的
C列中输入以下公式:

=IFERROR(VLOOKUP(B2,master.A2:B10,2,FALSE),"Not found")
如果您不能/不想更改主电子表格,有一些变通方法,但公式比我上面提到的更复杂,q.v.这里:


索引
返回表中的特定行

MATCH
返回值在表中的位置

您希望将它们一起使用:


索引
返回表中的特定行

MATCH
返回值在表中的位置

您希望将它们一起使用: