• 締切済み

複雑な関数の中にorを含むには?

=IF(ISERROR(INDEX(A:A,SMALL(INDEX(SUBSTITUTE(($DE$1:$DE$500="いちご")*1,0,10^5)*ROW($A$1:$A$500),),ROW(CP1)))),"",INDEX(A:A,SMALL(INDEX(SUBSTITUTE(($DE$1:$DE$500="いちご")*1,0,10^5)*ROW($A$1:$A$500),),ROW(CP1)))) の式があるとしたとき、「いちご」もしくは「りんご」としたいとき、どのような式にすればよろしいのでしょうか。orを使用してみましたが、うまくいかず困っております。ご教示の程、宜しくお願いいたします。

みんなの回答

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.3

こんばんは。 例えば、SEARCH 関数を使ってみたらどうでしょうか? FIND関数と同じではあるのですが、SEARCH 関数は、ワイルドカードが使えます。 もし、単語の末字が、「・・・・ご」 だったら、本来は、「*ご」になりますが、以下は、「ご」を含む、ということですから、こういう式を考えてみました。 =IF(COUNTIF($DE$1:$DE$500,"*ご*")>=ROW(A1),INDEX($DE$1:$DE$500,SMALL(INDEX((ISERROR(SEARCH("*ご*",$DE$1:$DE$500))=FALSE)*ROW($DE$1:$DE$500),,),ROW(A1)+COUNTIF($DE$1:$DE$500,"<>*ご*")),1),"")

  • Wendy02
  • ベストアンサー率57% (3570/6232)
回答No.2

こんにちは。 =IF(SUMPRODUCT(COUNTIF($DE$1:$DE$500,{"いちご","りんご"}))>=ROW(A1),INDEX($DE$1:$DE$500,SMALL(INDEX(SUBSTITUTE(($DE$1:$DE$500={"いちご","りんご"})*ROW($DE$1:$DE$500),0,10^5)*1,,),ROW(A1)),1),"") もう、このぐらいになると、フィルタオプションなどのほうがよいですね。

udonco4649
質問者

補足

ありがとうございます。お礼が遅れてしまい申しわけありません。 ご説明の内容、よくわかりました。今回の場合は名詞を指定していますが、「いちご」「りんご」に共通する文字である「ご」を含む、、、という内容に変えたい場合はどのようにすればよろしいのでしょうか? 度重なる質問で恐縮ですが、どうぞよろしくお願いいたします。

  • zap35
  • ベストアンサー率44% (1383/3079)
回答No.1

>($DE$1:$DE$500="いちご")*1 の部分(2カ所)を  ($DE$1:$DE$500="いちご")*1+($DE$1:$DE$500="りんご")*1 にすればとりあえず動くと思います

関連するQ&A

専門家に質問してみよう