如果单元格的邻居包含特定字符串,如何为单元格分配值?
例如,A列中的字段:
dog11
cat22
cow11
chick11
duck22
cat11
horse22
cat33
B列的语法是:
=IF(SEARCH("cat",A1),"cat",IF(SEARCH("22",A1),"22","none"))
它总是拾取第一个TRUE单元格,但是当值不为真时会丢弃。
答案 0 :(得分:103)
SEARCH
如果没有匹配则不会返回0
,它会返回#VALUE!
。因此,您必须使用SEARCH
来调用IFERROR
。
例如......
= IF(IFERROR(SEARCH(“cat”,A1),0),“cat”,“none”)
或
= IF(IFERROR(SEARCH( “猫”,A1),0), “猫”,IF(IFERROR(SEARCH( “22”,A1),0), “22”, “无”))< / p>
此处,IFERROR
会在SEARCH
工作时返回值;否则为0
的给定值。
答案 1 :(得分:4)
您可以使用OR()
对表达式进行分组(以及AND()
):
=IF(OR(condition1, condition2), true, false)
=IF(AND(condition1, condition2), true, false)
所以如果你想测试“cat”和“22”:
=IF(AND(SEARCH("cat",a1),SEARCH("22",a1)),"cat and 22","none")
答案 2 :(得分:0)
=IFS(COUNTIF(A1,"*cats*"),"cats",COUNTIF(A1,"*22*"),"22",TRUE,"none")