我想知道是否有一个VLOOKUP公式在一列中首先查找,如果没有匹配,则进入下一列,如果仍然没有匹配则返回一个值,例如,NO MATCH。
我一直在尝试谷歌和YouTube这个问题,但找不到任何东西。希望有人可以帮助我。
答案 0 :(得分:0)
假设你查找表是来自A1:D6,列A和B是你的查找值。您正在寻找的价值是G6
从基本的VLOOKUP函数开始,如下所示:
=VLOOKUP(G6,A1:D6,3,0)
这假设您希望返回范围中第三列的值(在本例中为C),因为3.您还要查找由0定义的完全匹配。
如果在第1列中找不到您要查找的值,则会产生错误。因此,我们可以使用IFERROR函数告诉我们在发生错误时该怎么做。
=IFERROR(VLOOKUP(G6,A1:D6,3,0),VLOOKUP(G6,B1:D6,2,0))
因此,如果发生错误,它会执行第二次查找。请注意查找范围从B列而不是A开始。另请注意,C列现在是范围中的第2列,因此3更改为2.现在,如果在任一情况下都找不到,我们可以简单地嵌套IFERROR在另一个IFERROR内如下:
=IFERROR(IFERROR(VLOOKUP(G6,A1:D6,3,0),VLOOKUP(G6,B1:D6,2,0)),G6&" not found in first two columns")
此方法将返回与您从第一列顶部开始遇到的搜索条件匹配的第一个值,如果第二列中的顶部的第一个值失败,则不会发现它将发布错误消息。
还有其他方法可以做到这一点,特别是如果两列中最多有一个查找值实例,或者如果你不关心列而只想要第一行/最后一行(或第n行)发生。