- ベストアンサー
Excel 文字を検索して、ヒットしたら○を表示
シートAには、 あいうえお001かきくけこ さしすせそ002たちつてと みたいな文字列がズラズラとA列に並んでいます。 そこで、シートBで、 「シートAのA列を対象に"001"を検索し、HITしたら○、しなかったら×と表示する」ようにしたいのですが、 どうやればいいのか分かりません。。 シートAのA列は001とか002とかいう検索したい文字列のみがあるわけではなく、 長い文字列の途中に001という文字が含まれているので、 普通のVLOOKUP関数が使えない気がします。。 どうすればよいのでしょうか?
- みんなの回答 (4)
- 専門家の回答
質問者が選んだベストアンサー
◆Sheet1のA列(A1:A10)に 001 を含んだものがあれば○というのであれば、 =IF(SUM(INDEX(N(ISNUMBER(FIND("001",$A$1:$A$10))),)),"○","×")
その他の回答 (3)
- imogasi
- ベストアンサー率27% (4737/17069)
A列 B列 C列 D列 qqw001kks 4 ○ ○ as001jklui 3 ○ ○ a002iu #VALUE! ✕ ✕ 001jkyut 1 ○ ○ B1は=SEARCH("001",A1) C1は=IF(ISERROR(SEARCH("001",A1)),"✕","○") D1は=IF(ISERROR(SEARCH("*001*",A1)),"✕","○") SEARCH関数は(「Find関数に「比べ)ワイルドカード文字が使えて、自由度が大きい。 >普通のVLOOKUP関数が使えない気がします。。 通常の使い方で、使う目的が違います。
お礼
回答ありがとうございました! 無事できました。 SEARCH関数良いですね。
- FEX2053
- ベストアンサー率37% (7991/21371)
#1の回答者です。ごめんなさい。2つ目の式はこっちが正当です。 =IF(ISERROR(FIND("001",A1,1)),"×","○")
お礼
ありがとうございました! 無事に出来ました。 ちょっとだけ改造して使うことにします。
- FEX2053
- ベストアンサー率37% (7991/21371)
文字列中にある文字があるかどうか探す関数としてFIND関数があります。 A1セルに"001"という文字があるかどうか探す場合は、 =FIND("001",A1,1) とやれば、「"001"がはじめから何文字目にあるか」が返ってきます。 ただし、そのままだと「検索結果なし」だとエラーになってしまいますので、 =IF(ISERROR(FIND("RQ",A1,1)),"○","×") こうやって、エラーをチェックかけると「見つかると○、見つからないと×」 という結果が得られます。
お礼
出来ました! 他の方のだとなぜか上手くできませんでしたが、 maron--5さんのだと完璧でした! ありがとうございました。