• ベストアンサー

Excel ワイルドカードで文字列検索

A1|"Word" A2|"Excel" A3|"PPT" というシートがあり、A1~A3の列に"or"という文字列がある場合は隣のB1~B3にYes、なければ空欄、という表示をしたいのですが、どういう関数があるでしょうか。 違うかなと思いながら、=IF(A1="*or*","Yes","") としたのですがやっぱりダメでした。フィルタ機能はつかわずに関数でできたらと思っています。よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • kmetu
  • ベストアンサー率41% (562/1346)
回答No.1

以下でいかがでしょう =IF(COUNTIF(A1,"*"& "or" &"*"),"Yes","")

beachman
質問者

お礼

遅くなりました。 なるほど、これでできました。countifは考えもしなかったです^^

その他の回答 (3)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.4

B1=IF(COUNTIF(A1,"*or*"),"Yes","") または B1=IF(COUNT(FIND("or",B1)),"Yes","")

beachman
質問者

お礼

ありがとうございました。countif, findを使えるのですね。

  • imogasi
  • ベストアンサー率27% (4737/17069)
回答No.3

(1)ワイルドカードを使わなくても、そのorという文字列があるか、とチェックすればよいので 例データ Word YES Excel Password YES Sword YES B1の式は =IF(NOT(ISERROR(FIND("or",A1))),"YES","") (2)Serach 関数はワイルドカードを使える。 例データ Word YES Excel Password YES Sword YES B1は =IF(NOT(ISERROR(SEARCH("*or*",A1))),"YES","") (3)COUNTIF関数はワイルドカードが使えるので 例データ Word YES Excel Password YES Sword YES B1の式は =IF(COUNTIF(A1,"*or*")=1,"YES","") (4)上例でB1に =IF(LEN(A1)=LEN(SUBSTITUTE(A1,"or","")),"","YES") 多分これで全部だろう。 関数以外には方法もある。

beachman
質問者

お礼

たくさん紹介してもらいありがとうございました。*の使えるもの、使えないものがあるんですね。

  • hige_082
  • ベストアンサー率50% (379/747)
回答No.2

こういう事? B1へ =IF(ISERR(FIND("or",A1)),"","yes")

beachman
質問者

お礼

これでもできるんですね。勉強になりました。ありがとうございます。

関連するQ&A