- ベストアンサー
エクセルのFINDで複数のワードを検索したい
- エクセルのFIND関数を使って複数のワードを検索する方法について教えてください。
- FIND関数を使ってAndroidとiPhoneの文字列を検索し、結果に応じて表示する方法について詳しく教えてください。
- エクセルのFIND関数を使って文字列の検索結果を表示する際、#VALUEと表示される問題を解決したいです。
- みんなの回答 (8)
- 専門家の回答
質問者が選んだベストアンサー
=IF(ISERROR(FIND("Android",A1,1)),IF(ISERROR(FIND("iPhone",A1,1)),"","iPhone"),"Android") とするか、あるいは =IF(COUNTIF(A1,"*Android*"),"Android",IF(COUNTIF(A1,"*iPhone*"),"iPhone","")) とするかですね。 ちなみに後者の式だと大文字小文字は区別されません。
その他の回答 (7)
- don9don9
- ベストアンサー率47% (299/624)
No.5の方へ 質問は完全一致ではなく部分一致ですよ。
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
何度もごめんなさい、No.6 ですが、つまらないミスしました。「空なら空、Android なら…」と書きましたが、空文字列のときだけは、「0」と表示してしまいます。それを(数式の力だけで)防ぐには、次のように書く必要があります。間違えてすみません。 =if(a1="","",a1)
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
あ、しまった。No.5 ですが、いちばん簡単な数式を書くの忘れました。次式で、空なら空、Android なら Android、iPhone なら iPhone と表示されます。 =a1
- MarcoRossiItaly
- ベストアンサー率40% (454/1128)
まだ回答として出てない数式の例をいくつか。どれでもお好きなのを。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",""))
お礼
回答ありがとうございます。 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)
=IF(ISERROR(FIND("Android",A1)),"","Android") &IF(ISERROR(FIND("iPhone",A1)),"","iPhone") 改行も含めて丸々コピーして 数式バーに貼り付け下さい。 単純ですよね? 条件が増えたなら&IFから行末までをもう1行足してしまうだけです。 0を何回足しても0のまま これと一緒で ""を何回繋いでも""のまま そういうことです。 如何でしょうか? お役に立てていたならば幸いです。
お礼
回答ありがとうございます。 この書き方だと選択肢が多くなっても見やすくなってよいですね。 助かります。ありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =IF(ISNUMBER(FIND("Android",A1)),"Android",IF(ISNUMBER(FIND("iPhone",A1)),"iPhone",""))
お礼
回答ありがとうございます。 なるほど、エラーかどうかの判定を、数字かどうかで判断するのですね。ISERRORより分かり易いです。 ありがとうございます。
- KURUMITO
- ベストアンサー率42% (1835/4283)
FIND関数は含まれていない場合にはエラーとなって#VALUEが表示されます。 そこで、あなたと同じ内容の式にするとしたら次のような式にすることでしょう。 なお、AndroidやiPhoneの文字が全角や半角の場合でも適用できるようにするためにASC関数を使って半角文字に統一してから含まれているかどうかを調べています。 =IF(NOT(ISERROR(FIND("Android",ASC(A4),1))),"Android",IF(NOT(ISERROR(FIND("iPhone",ASC(A4),1))),"iPhone",""))
お礼
回答ありがとうございます。
お礼
回答ありがとうございます。 COUNTIF、シンプルで分かりやすいです。 ありがとうございました。 大文字小文字は区別する必要ありませんので、大丈夫です。