我有三点表态:
=IF(ISNUMBER(SEARCH($ET$2,B2)),B2,CONCATENATE("NA ",B2))
但我想做
=IF(ISNUMBER(SEARCH($ET$2 **OR** $ET$3 **OR** $ET$4, B2,CONCATENATE("NA ",B2))
在 Excel 中如何实现这一点?
还是我可以筑巢这两个(我尝试过,但没有运气)
=IF(ISNUMBER(SEARCH($ET$2,B2)),B2,CONCATENATE("NA ",B2))
and
=IF(ISNUMBER(SEARCH($ET$2,B2)),B2,CONCATENATE("NA ",B3))
答案1
您的问题不是很清楚,但是这将or
在语句中包含一个条件if
:
=IF(OR(ISNUMBER(SEARCH($ET$2,B2)), ISNUMBER(SEARCH($ET$3,B2)), ISNUMBER(SEARCH($ET$4,B2))),B2,CONCATENATE("NA ",B2))
注意:在 Excel2003 中,我不确定 OR 是否可以接受超过 2 个参数,在这种情况下你可以这样做OR(OR(x,y),z)
答案2
为了缩短公式,你可以使用这个版本
=IF(SUMPRODUCT(ISNUMBER(SEARCH($ET$2:$ET$4,B2))+0),"","NA ")&B2
....或者使用 COUNT 更短,但需要“输入数组”
=IF(COUNT(SEARCH($ET$2:$ET$4,B2)),"","NA ")&B2
答案3
可读性不强,但是:
=IF(OR(ISNUMBER(...), ISNUMBER(...),ISNUMBER(...)), B2,CONCATENATE("NA ",B2))
应该这么做。