2つのセル(AとB)を比較し、セルAに記述された文字列の中にセルBに記述された文字列が含まれていた場合1(true)を返す。
※セルAとセルBはそれぞれ一対のものとします(例:セルA1,A2,A3…に対し、セルB1,B2,B3…)
わかる方お願いします。
A1 ---> aaabbbccc
B1 ---> bbb
C1 ---> =IF(ISERROR(FIND(B1,A1,1)),0,1) ---> 1
A2 ---> aaabbbccc
B2 ---> ddd
C2 ---> =IF(ISERROR(FIND(B2,A2,1)),0,1) ---> 0
上記のようにFIND関数の結果がエラー(指定した文字列が検索対象から見つからない)かどうかを判定すればどうでしょうか。
=IF(ISERROR(SEARCH(B1,A1)),"false","true")
セルC1に以上のように書いて、C2,C3,C4,・・・以下にコピー
URLはダミーです
べたな方法ですが
=MATCH(B1,A1)
=IF(SEARCH(B1,A1)>0,1,0)
のどちらでも1になると思います
A2、A3…に対しても同様に設定すればOKです。
コメント(3件)
>>fonya3さん
>>kn1967さん
ほぼ同時に回答ありがとうございます。
試したところ両方の方法でチェックができました。というかISERRORという関数をはじめて知った…
>>NOV1975さん
確認したのですが、どうもエラーが出てしまうみたいです。
数字だったらできるのでしょうか?むむむ…
(1)SEARCH関数
アルファベットの大文字と小文字を同じ文字として検索します
検索にワイルドカードが使えるのであいまい検索ができます。
(2)FIND関数
アルファベットの大文字小文字を別物として区別します。
ワイルドカードは使えません。
以上のように動作に違いが出ますので適宜使い分ける必要があります。
(3)ISERROR関数
SEARCH(B1,A1)>0と書いておられる方は他の処理系とごちゃごちゃになったのだと思いますが、Excelワークシート関数のSEARCHもFINDも『検索結果として見つからなかった場合は#Value!というエラーを返します』のでISERROR関数で判定する必要があったりするのです。