• ベストアンサー

複数の文字列のいずれかが含まれていたらTRUEを返す関数について

複数の文字列のいずれかが含まれていたらTRUEを返す関数について エクセル2003を使用しています。 B列に例えば住所が入力されていて、「東京都北区」「千代田区」「東村山市」等いくつかの文字列のいずれかが含まれていたら、A列にTRUEを返すということをしたいのですが方法がわかりません。 単純なことのような気がするのですがどうしても思いつきません。よろしくお願いいたします。

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

  • ベストアンサー
回答No.1

こうかなあ。。。 A2セル =OR(SUBSTITUTE(B2,$D$2:$D$4,"",1)<>B2) [Ctrl]+[Shft] +[Enter] で確定、配列数式です({}で囲まれる) 下へオートフィル D2:D4に文字列を入力しておく

shirogane
質問者

お礼

早速の回答ありがとうございました。 SUBSTITUTEは使ったことがなかったので勉強になりました。

すると、全ての回答が全文表示されます。

その他の回答 (2)

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

一例です。 =SUM(COUNTIF(B2,{"*東京都北区*","*千代田区*","*東村山市*"}))

shirogane
質問者

お礼

回答ありがとうございます。 いろんなやり方があるものですね。 2つに当てはまる場合は2、3つに当てはまる場合は3が返ってくるので別の目的に使えそうです。

すると、全ての回答が全文表示されます。
  • aokii
  • ベストアンサー率23% (5210/22063)
回答No.2

単純な方法でしたら、こんな感じでしょうか。 =NOT(AND(ISERROR(FIND("東京都北区",B2,1)),ISERROR(FIND("千代田区",B2,1)),ISERROR(FIND("東村山市",B2,1)))) 文字列がたくさんあったら「東京都北区」「千代田区」「東村山市」の部分は、セルを参照させた方がいいでしょう。 C2セル=東京都北区 C3セル=千代田区 C4セル=東村山市 にすれば、 =NOT(AND(ISERROR(FIND($C$2,B2,1)),ISERROR(FIND($C$3,B2,1)),ISERROR(FIND($C$4,B2,1)))) です。

shirogane
質問者

お礼

回答ありがとうございます。 この方向で考えてたのですがなかなかうまくいかなかったのです。 すっきりしました。

すると、全ての回答が全文表示されます。

関連するQ&A