- ベストアンサー
エクセルでA列にある文字をB列で探す
Excelで、A列に入っている文字(一文字)がB列のどこかに含まれているか、そうでないかを調べるにはどうすればいいでしょうか。 データ例 A B 算 漢字 国 字画 理 文字 社 国字 図 数字 画 画数 となっているときに Bの字画、国字、画数、を見つける方法です。 データが少なければA列を一つ一つ検索していけばいいのはわかるのですが、まとめてできる方法を教えてください。
- みんなの回答 (6)
- 専門家の回答
質問者が選んだベストアンサー
A列のデータの文字が含まれているかどうかをC列に表示するならB1セル以下に以下のような配列数式を入力します。 =IF(COUNT(1/MATCH("*"&$A$1:$A$6&"*",B1,0)),"あり","") 配列数式ですので入力後Ctrl+Shift+Enterで確定してください。 このような該当データの横に「あり」を表示するのではなく、たとえば該当データの一覧を作成したいような場合は、さらに複雑な配列数式を作成する必要があります。
その他の回答 (5)
- KURUMITO
- ベストアンサー率42% (1835/4283)
ごめんなさい。式を試験せずに提示してしまいました。 B列が5文字まででしたらC1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(COUNTIF(A:A,MID(B1,LEN(B1)-1,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,LEN(B1)-2,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,LEN(B1)-3,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,LEN(B1)-4,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,LEN(B1)-5,1))>0,B1,"")
お礼
回答番号:No.3~6のみなさん ご回答ありがとうございました。 今回は下記で済ませてしまいましたが またこの別解答を利用させていただくこともあると思います。 どうもありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
B列に5文字までがあるとしたら式を単純に付加すればよいでしょう。 =IF(COUNTIF(A:A,MID(B1,1,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,2,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,3,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,4,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,5,1))>0,B1,"")
お礼
回答番号:No.3~6のみなさん ご回答ありがとうございました。 今回は下記で済ませてしまいましたが またこの別解答を利用させていただくこともあると思います。 どうもありがとうございました。
別解 C1: =IF(SUMPRODUCT(LEN(B1)-LEN(SUBSTITUTE(B1,A$1:A$11,""))),"あり","")
お礼
回答番号:No.3~6のみなさん ご回答ありがとうございました。 今回は下記で済ませてしまいましたが またこの別解答を利用させていただくこともあると思います。 どうもありがとうございました。
別解 C1: {=IF(SUM(LEN(B1)-LEN(SUBSTITUTE(B1,A$1:A$11,""))),"あり","")} (配列数式)
お礼
回答番号:No.3~6のみなさん ご回答ありがとうございました。 今回は下記で済ませてしまいましたが またこの別解答を利用させていただくこともあると思います。 どうもありがとうございました。
- KURUMITO
- ベストアンサー率42% (1835/4283)
C1セルに次の式を入力して下方にオートフィルドラッグします。 =IF(COUNTIF(A:A,MID(B1,1,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,2,1))>0,B1,"")
お礼
ありがとうございます! B列が二文字以上の場合は有効なようです。 一文字の場合、A列に該当文字がなくても B列の文字がC列に表示されてしまいました。 私が一文字の例を入れなかったので、せっかくお答えいただいたのにすみません。 でも2番目の回答の方とのあわせ技で処理がうまくできました。 ありがとうございます。
補足
すみません、データ例が規則的すぎました。 上記の方法ではぜんぜん違う結果になってしまいました。 実際のデータは A B 算 漢字 国 字画 理 科学 社 国字 図 お国柄 画 花柄 括 全角 喝 理にかなう 渇 皮算用 褐 数字 轄 黄色 のように、Bの文字数はさまざまで、ひらがななどもあるのです。 それで、字画、国字、お国柄、理にかなう、皮算用などを見つけ出したいです。 そういう場合は、関数では難しいのでしょうか。
補足
ありがとうございます! この数式をB1セル以下に入力するという意味はわからなくて C列に入れましたがそれでうまくいきました!