Jef*_*ady 1 excel vba excel-vba
我有一个包含2个工作表的Excel工作簿.我们称之为"物品清单"和"物品主数据".
在"项目列表"中,我有2列,B("代码")和C("子代码").它看起来像这样:
A B C
----------------
100 AR
110 AR
120 NU
130 AR
Run Code Online (Sandbox Code Playgroud)
在"项目主文件"中,我有类似的列,K("代码")和L("子代码").它看起来像这样:
E K L
----------------
xx 100 AR
xx 100 AR
xy 120 NU
xc 120 AR
xz 130 AR
Run Code Online (Sandbox Code Playgroud)
在"项目列表"中,我需要让列C显示"项目主文件"列E的值,如果B和C的值与K和L的值匹配.
因此,如果(项目列表)A AND(项目列表)B匹配(项目主文件)K AND(项目主文件)L,则(项目列表)C =(项目主文件)E
如果有多个匹配项,则搜索可以在第一个匹配项后停止并获取列E的值,因为它对于所有匹配项都是相同的.
如何才能做到这一点?
在工作Item Master表中,在列M中创建以下公式=(K2&L2),然后将其向下拖动到行集.
在Item List表格的C栏中写下这个公式.
=Offset(`Item Master`!$E$1,match($A2&$B2,'Item Master`!$M:$M,0)-1,0)
Run Code Online (Sandbox Code Playgroud)
然后填写行集.