web-dev-qa-db-ja.com

Excel:セル内の複数の用語を検索する

この便利な方程式を使用して、Excelのセル内の用語を検索します。

=IF(ISNUMBER(SEARCH("*Gingrich*",C1)),"1","")

この方程式は、C1にGingrichが存在するかどうかを検索し、存在する場合は1を表示します。

一度に複数の用語を検索するだけです。誰もOR関数をこれに追加する方法を知っているので、Gingrich OR Obama OR Romneyなど。 ?

14
Chris J. Vargo

別の方法

=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()関数ではワイルドカードはまったく必要ありません。

29
teylyn

このようなCOUNT関数を使用してみてください

=IF(COUNT(SEARCH({"Romney","Obama","Gingrich"},C1)),1,"")

ワイルドカードは必要なく(teylynが言うように)、特定の理由がない限り "1"は引用符を必要としないことに注意してください(実際、テキスト値になります)

9
barry houdini

これはあなたのためにそれを行います:

=IF(OR(ISNUMBER(SEARCH("Gingrich",C3)),ISNUMBER(SEARCH("Obama",C3))),"1","")

名前の右側の列(列Cにある)にこの関数がある場合、結果は次のようになります。

Romney  
Gingrich    1
Obama       1
3
Simon