• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:エクセルのFINDで複数のワードを検索したい。)

エクセルのFINDで複数のワードを検索したい

このQ&Aのポイント
  • エクセルのFIND関数を使って複数のワードを検索する方法について教えてください。
  • FIND関数を使ってAndroidとiPhoneの文字列を検索し、結果に応じて表示する方法について詳しく教えてください。
  • エクセルのFIND関数を使って文字列の検索結果を表示する際、#VALUEと表示される問題を解決したいです。

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

  • ベストアンサー
  • don9don9
  • ベストアンサー率47% (299/624)
回答No.1

=IF(ISERROR(FIND("Android",A1,1)),IF(ISERROR(FIND("iPhone",A1,1)),"","iPhone"),"Android") とするか、あるいは =IF(COUNTIF(A1,"*Android*"),"Android",IF(COUNTIF(A1,"*iPhone*"),"iPhone","")) とするかですね。 ちなみに後者の式だと大文字小文字は区別されません。

workpad30j
質問者

お礼

回答ありがとうございます。 COUNTIF、シンプルで分かりやすいです。 ありがとうございました。 大文字小文字は区別する必要ありませんので、大丈夫です。

その他の回答 (7)

  • don9don9
  • ベストアンサー率47% (299/624)
回答No.8

No.5の方へ 質問は完全一致ではなく部分一致ですよ。

回答No.7

何度もごめんなさい、No.6 ですが、つまらないミスしました。「空なら空、Android なら…」と書きましたが、空文字列のときだけは、「0」と表示してしまいます。それを(数式の力だけで)防ぐには、次のように書く必要があります。間違えてすみません。 =if(a1="","",a1)

回答No.6

あ、しまった。No.5 ですが、いちばん簡単な数式を書くの忘れました。次式で、空なら空、Android なら Android、iPhone なら iPhone と表示されます。 =a1

回答No.5

まだ回答として出てない数式の例をいくつか。どれでもお好きなのを。2003 だそうですから IFERROR 関数は使えませんね。 =if(a1="","",lookup(a1,{"Android","iPhone"})) =choose(1+(a1="Android")+2*(a1="iPhone"),"","Android","iPhone") =choose(1+if(a1="",,match(a1,{"Android","iPhone"},)),"","Android","iPhone") =IF(count(FIND("Android",A1,1)),"Android",IF(count(FIND("iPhone",A1,1)),"iPhone",""))

workpad30j
質問者

お礼

回答ありがとうございます。 A1には、例えば、以下のような文字列があり、その中に「Android」や「iPhone」が含まれているか、ということです。 質問の仕方が悪く、すみませんでした。 ■A1セルの例 Mozilla/5.0 (iPhone; CPU iPhone OS 6_1_3 like Mac OS X) AppleWebKit/536.26 (KHTML, like Gecko) Mobile/10B329

  • Nouble
  • ベストアンサー率18% (330/1783)
回答No.4

=IF(ISERROR(FIND("Android",A1)),"","Android") &IF(ISERROR(FIND("iPhone",A1)),"","iPhone") 改行も含めて丸々コピーして 数式バーに貼り付け下さい。 単純ですよね? 条件が増えたなら&IFから行末までをもう1行足してしまうだけです。 0を何回足しても0のまま これと一緒で ""を何回繋いでも""のまま そういうことです。 如何でしょうか? お役に立てていたならば幸いです。

workpad30j
質問者

お礼

回答ありがとうございます。 この書き方だと選択肢が多くなっても見やすくなってよいですね。 助かります。ありがとうございました。

  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.3

一例です。 =IF(ISNUMBER(FIND("Android",A1)),"Android",IF(ISNUMBER(FIND("iPhone",A1)),"iPhone",""))

workpad30j
質問者

お礼

回答ありがとうございます。 なるほど、エラーかどうかの判定を、数字かどうかで判断するのですね。ISERRORより分かり易いです。 ありがとうございます。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.2

FIND関数は含まれていない場合にはエラーとなって#VALUEが表示されます。 そこで、あなたと同じ内容の式にするとしたら次のような式にすることでしょう。 なお、AndroidやiPhoneの文字が全角や半角の場合でも適用できるようにするためにASC関数を使って半角文字に統一してから含まれているかどうかを調べています。 =IF(NOT(ISERROR(FIND("Android",ASC(A4),1))),"Android",IF(NOT(ISERROR(FIND("iPhone",ASC(A4),1))),"iPhone",""))

workpad30j
質問者

お礼

回答ありがとうございます。

関連するQ&A