- ベストアンサー
エクセルであるセルの文字が他のセル内で1文字でも存在するかを知る関数は?
エクセルであるセルの文字が他のセル内で1文字でも存在するかを知る関数はありますか? たとえばA列の値に存在する文字がB列に1文字でもあるかを チェックすることができるのでしょうか。 A列 | B列 | C列 -------+----------+---------- ABCD | XYZB | ○ --> Bがある XY | ABSCE | X --> XもYもない HD | XUDM | ○ --> Dがある マクロ(VBA)でなく関数で表したいのですが このような関数はありますか? 関数のヘルプを調べたのですが、出来そうで出来ません。 どうぞよろしくお願いします。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
#01です。C1に貼り付ける式を訂正します =IF(MIN(INDEX(FIND(MID(A1,ROW(INDIRECT("1:"&LEN(A1))),1),B1&A1),))>LEN(B1),"×","○")
その他の回答 (2)
- imogasi
- ベストアンサー率27% (4737/17069)
VBAはイヤということだが (1)ユーザー関数を作る方法がある。 VBAコードを考える、という以外は通常関数と同じ。 (2)配列関数 これも関数というのでしょうから。 例データ A列 B列 C列 ABCD XYZBC 2 AC XYZB 0 BZ XYZB 2 X XYZB 1 XB XYZB 2 CV XYZB 0 CX XYZB 1 C列は =SUM((MID(A1,ROW($A$1:$A$10),1)<>"")*IF(ISERROR(FIND(MID(A1,ROW($A$1:$A$10),1),B1)),0,1)) と入れて、SHIFTとCTRLとENTERを同時押しする。 $A$10の10はA列文字数を10以下としている10です。 C列は共通文字数なので 本質問用には、0はX、1以上は○にする部分を加えればよい。=IF(SUM(・・)=0,"✕","○") (3)普通の関数 既に回答が出ている。
お礼
返信が遅くなり大変申し訳ありませんでした。 早速、やってみたところ回答どおりの関数でできました。ありがとうございました。
- zap35
- ベストアンサー率44% (1383/3079)
C1セルに以下の式を貼り付けます =IF(MIN(INDEX(FIND(MID(A1,ROW(INDIRECT("A1:A"&LEN(A1))),1),B1&A1),))>LEN(A1),"×","○") C1セルを下方向にコピーしてください
お礼
返信が遅くなり大変申し訳ありませんでした。 早速、やってみたところ回答どおりの関数でできました。ありがとうございました。