我使用这个方便的方程式在excel中搜索单元格内部的术语。
=IF(ISNUMBER(SEARCH("*Gingrich*",C1)),"1","")
此等式搜索C1中是否存在Gingrich,如果存在,则显示1。
我要做的就是一次搜索多个词。任何人都知道如何在其中添加OR函数,以便我可以搜索Gingrich OR Obama或Romney等吗?]
=IF(SUMPRODUCT(--(NOT(ISERR(SEARCH({"Gingrich","Obama","Romney"},C1)))))>0,"1","")
此外,如果您保留值列表,例如A1至A3,则可以使用
=IF(SUMPRODUCT(--(NOT(ISERR(SEARCH($A$1:$A$3,C1)))))>0,"1","")
在Search()函数中根本不需要通配符,因为Search()返回找到的字符串的位置。
=IF(COUNT(SEARCH({"Romney","Obama","Gingrich"},C1)),1,"")
请注意,您不需要通配符(如teylyn所说的,并且除非有特殊原因,否则“ 1”不需要引号(实际上使其成为文本值)]
=IF(OR(ISNUMBER(SEARCH("Gingrich",C3)),ISNUMBER(SEARCH("Obama",C3))),"1","")
在名称右边的列(位于C列中)给出此功能,结果是:
Romney Gingrich 1 Obama 1
SEARCH
函数,如我从EVALUATE
中找到的。例如,我将以下术语作为文本放在单元格this link中:
$G$1
然后,我为该单元格定义了一个名为"PRB", "utilization", "alignment", "spectrum"
的命名范围,如上面的链接中所述,如下图所示:
search_terms
Refers to:
上面的=EVALUATE("{" & TDoc_List!$G$1 & "}")
表达式很容易用来模拟文字字符串
EVALUATE
用作{"PRB", "utilization", "alignment", "spectrum"}
函数的输入:在SEARCH
内部使用直接引用单个单元格$G$1
(在这种情况下用花括号增强)不起作用,因此使用命名范围和SEARCH
。技巧现在在于用
EVALUATE
增强的命名范围$G$1
代替对EVALUATE
的直接引用。
search_terms
它确实有效,并且再次显示了Excel的强大功能!
希望这会有所帮助。