我最近了解到,当Excel's Find function在大海捞针中找不到针时(即未找到匹配项),会返回#VALUE错误。我有几个关于这种行为的问题:
答案 0 :(得分:14)
Find函数查找区分大小写的匹配项,可以使用IsNumber进行测试,例如:
=IF(ISNUMBER(FIND("abc",A1)),FIND("abc",A1),"No exact match")
有一个非常类似的函数叫做Search,它执行相同的操作,但不区分大小写。如果未找到匹配项,它也会返回错误。
因此,如果您正在寻找某些内容并希望在没有匹配且您不担心区分大小写的情况下返回-1,那么这样的内容应该对您有用:
=IF(COUNTIF(A1,"*abc*")=0,-1,SEARCH("abc",A1))
对于区分大小写的搜索,它将是:
=IF(ISNUMBER(FIND("abc",A1)),FIND("abc",A1),-1)
如果您使用的是Excel 2007或更高版本,则可以使用IFERROR跳过错误检查:
=IFERROR(SEARCH("abc",A1),-1)
=IFERROR(FIND("abc",A1),-1)