Excel:VLOOKUP返回true或false?

在Excel中,我们有VLOOKUP函数,该VLOOKUP在表中的列中查找值,如果发现某些内容,则返回该表中给定列的值。 如果没有,则会产生一个错误。

有没有一个函数,只是返回true或false,取决于如果在列中find值或不是?

你可以把你的VLOOKUP()包装在一个IFERROR()

编辑:在Excel 2007之前,使用=IF(ISERROR()...)

您仍然必须将其包装在ISERROR中,但可以使用MATCH()而不是VLOOKUP()

以指定的顺序返回数组中项目与指定值匹配的相对位置。 当你需要在一个范围内的一个项目的位置而不是项目本身时,使用MATCH而不是其中一个LOOKUP函数。

下面是一个完整的例子,假设你在单元格范围内寻找单词“key”:

 =IF(ISERROR(MATCH("key",A5:A16,FALSE)),"missing","found") 

FALSE必须强制完全匹配,否则会查找最接近的值。

只需使用COUNTIF! 编写和计算比其他build议快得多。


编辑:

假设B1列的值在列C中find,那么单元格A1应该是1,否则它应该是2.你会怎么做?

我想说如果在C列中findB1的值,那么A1将是正数,否则将是0.这很容易用公式: =COUNTIF($C$1:$C$15,B1) ,这意味着:count范围C1:C15中等于B1

您可以将COUNTIFVLOOKUPIF结合使用,这比使用2个查找+ ISNA要快得多。 IF(COUNTIF(..)>0,LOOKUP(..),"Not found")

谷歌search会带给你很多的例子 。

我们一直使用一个

 if(iserror(vlookup,"n/a",vlookup)) 

Excel 2007引入了IfError,它允许您在发生错误的情况下执行vlookup并添加输出,但是这对2003年没有帮助。

您可以使用:

 =IF(ISERROR(VLOOKUP(lookup value,table array,column no,FALSE)),"FALSE","TRUE") 

ISNA是最好的function使用。 我已经做了。 我希望所有不在数组中的值的单元格有条件地格式化为某种颜色。

= ISNA(VLOOKUP($ A2,工作表Sheet $ A:$ d,2,FALSE))