我有以下问题:
为了指定负责某个国家的正确办公室,我使用了VLOOKUP函数。以这种方式,中国办公室负责中国国家,办公室德国负责国家德国等。
到目前一切尚好。但是,也有一些情况,取决于不遵循通常方式的许可证,应该分配给其他办事处,而不遵循VLOOKUP函数,即
Germany
有很多例外。如何将这些异常构建到VLOOKUP函数中?
任何帮助都很感谢!
谢谢!
我已经用搜索来找到解决方案了,但是我失败了。也许我得看上去好点,抱歉。
发布于 2022-10-22 01:21:55
您可以在单元格LET
中使用以下内容
=IF(A2:A100="","",IFERROR(XLOOKUP(B2:B100,TB_Exceptions[License],
TB_Exceptions[Office]), IFERROR(XLOOKUP(C2:C100,
TB_CountryOffice[Country],TB_CountryOffice[Office]),
"CASE NOT FOUND")))
或者使用LET
函数来促进公式的维护:
=LET(nameRng, A2:A100, licRng,B2:B100, countryRng, C2:C100,
IF(nameRng="","",IFERROR(XLOOKUP(licRng,TB_Exceptions[License],
TB_Exceptions[Office]),IFERROR(XLOOKUP(countryRng,
TB_CountryOffice[Country],TB_CountryOffice[Office]),
"CASE NOT FOUND")))
)
解释
我们使用的是嵌套的XLOOKUP
,首先以限制最严格的搜索(即异常)为起点,如果是#N/A
,则查找常规的国家查找表。如果没有定义某些查找值,我们认为CASE NOT FOUND
是最后的手段。
我们使用Excel表在查找表中具有动态范围。对于初始数据集,我们不使用它,因为对于Excel表,不支持溢出的数组公式,即它返回#SPILL!
错误。
我们定义了比实际输入数据集更大的数据输入范围,以防我们想要包含其他数据。我们添加了初始条件:IF(A2:A100="","",..)
来处理输入表的空行。
https://stackoverflow.com/questions/74144441
复制相似问题