我有一个包含2个工作表的Excel工作簿。我们称之为“物品清单”和“物品主数据”。
在“项目列表”中,我有2列,B(“代码”)和C(“子代码”)。它看起来像这样:
A B C
----------------
100 AR
110 AR
120 NU
130 AR
在“物品主数据”中,我有类似的列,K(“代码”)和L(“子代码”)。它看起来像这样:
E K L
----------------
xx 100 AR
xx 100 AR
xy 120 NU
xc 120 AR
xz 130 AR
在“项目清单”中,我需要让列C显示“项目主文件”列E的值,如果B和C的值与K和L的值匹配。
因此,如果(项目列表)A AND(项目列表)B匹配(项目主文件)K AND(项目主文件)L,则(项目列表)C =(项目主文件)E
如果有多个匹配项,搜索可以在第一个匹配项后停止并获取列E的值,因为它对所有匹配项都是相同的。
如何做到这一点?
答案 0 :(得分:5)
在Item Master
表格中,在列M =(K2&L2)
中创建以下公式,然后将其向下拖动到行集。
在Item List
表格的C栏中写下此公式。
=Offset(`Item Master`!$E$1,match($A2&$B2,'Item Master`!$M:$M,0)-1,0)
然后填写行集。
答案 1 :(得分:0)
您也可以使用此数组公式。输入公式后,必须使用 CTL + SHIFT + ENTER 。这将取消使用辅助列
的使用 =INDEX('Item Master'!E:E,MATCH(1,('Item Master'!L:L=B1)*('Item Master'!K:K=A1),0))
上述公式位于C1
的{{1}},然后您可以将其复制下来......
<强> SCREENSHOT 强>