如果在WorkBook2的ColB中找到WorkBook1中的文本“A”,则从WorkBook2中搜索ROW 中的一列,其中找到文本“A”以查找文本“B”。 / p>
基本上,我有两个电子表格,由一个公共标识符(完成作业的人)链接。在WorkBook2中,人们可以获得许多不同任务的认证,他们的认证代码存储在AN:HP列中。 WorkBook1包含已完成的作业,完成作业的人员以及作业类型。我想搜索WorkBook2以查看完成工作的人是否已获得该类工作的认证。困难在于每个人最多可以容纳20种不同的认证码。 我目前可以找到WorkBook2中的行,其中人员(文本“A”)列在WorkBook1 {H}中的H列中=MATCH(H2,'[WorkBook2]Sheet1'!$B:$B,0)
现在我需要使用该行号作为数组在WorkBook2中搜索认证类型(文本“B”)在[WorkBook1] Sheet1'!T2
答案 0 :(得分:0)
您已设法获得第一部分,即使用MATCH()
返回列出此人的行。您可以使用OFFSET()
函数根据该行号创建动态范围。
OFFSET()
取一个范围,然后将其偏移多个行或列。
OFFSET(reference, rows, cols, [height], [width])
因此,您可以使用
创建对所需行的引用 OFFSET([Workbook2]Sheet1!$AN$1:$HP$1,MATCH(H2,'[WorkBook2]Sheet1'!$B:$B,0)-1,0)
这可以通过将起始范围设置为AN1:HP1然后将其向下移动MATCH
less 1 返回的行号来实现。如果我们没有减去一行,我们会超过一行。
然后,您可以使用匹配来查找认证。
=MATCH(T2,OFFSET([Workbook2]Sheet1!$AN$1:$HP$1,MATCH(H2,'[WorkBook2]Sheet1'!$B:$B,0)-1,0),0)