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
。
您可以将COUNTIF
与VLOOKUP
和IF
结合使用,这比使用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))