アプリ版:「スタンプのみでお礼する」機能のリリースについて

Excelで、A列に入っている文字(一文字)がB列のどこかに含まれているか、そうでないかを調べるにはどうすればいいでしょうか。

データ例

A B
算 漢字
国 字画
理 文字
社 国字
図 数字
画 画数

となっているときに

Bの字画、国字、画数、を見つける方法です。
データが少なければA列を一つ一つ検索していけばいいのはわかるのですが、まとめてできる方法を教えてください。

A 回答 (6件)

C1セルに次の式を入力して下方にオートフィルドラッグします。


=IF(COUNTIF(A:A,MID(B1,1,1))>0,B1,"")&IF(COUNTIF(A:A,MID(B1,2,1))>0,B1,"")

この回答への補足

すみません、データ例が規則的すぎました。
上記の方法ではぜんぜん違う結果になってしまいました。

実際のデータは
A B
算 漢字
国 字画
理 科学
社 国字
図 お国柄
画 花柄
括 全角
喝 理にかなう
渇 皮算用
褐 数字
轄 黄色

のように、Bの文字数はさまざまで、ひらがななどもあるのです。
それで、字画、国字、お国柄、理にかなう、皮算用などを見つけ出したいです。
そういう場合は、関数では難しいのでしょうか。

補足日時:2009/12/22 13:11
    • good
    • 0
この回答へのお礼

ありがとうございます!
B列が二文字以上の場合は有効なようです。
一文字の場合、A列に該当文字がなくても
B列の文字がC列に表示されてしまいました。
私が一文字の例を入れなかったので、せっかくお答えいただいたのにすみません。
でも2番目の回答の方とのあわせ技で処理がうまくできました。
ありがとうございます。

お礼日時:2009/12/22 13:51

A列のデータの文字が含まれているかどうかをC列に表示するならB1セル以下に以下のような配列数式を入力します。



=IF(COUNT(1/MATCH("*"&$A$1:$A$6&"*",B1,0)),"あり","")

配列数式ですので入力後Ctrl+Shift+Enterで確定してください。

このような該当データの横に「あり」を表示するのではなく、たとえば該当データの一覧を作成したいような場合は、さらに複雑な配列数式を作成する必要があります。

この回答への補足

ありがとうございます!
この数式をB1セル以下に入力するという意味はわからなくて
C列に入れましたがそれでうまくいきました!

補足日時:2009/12/22 13:41
    • good
    • 0

別解


C1: {=IF(SUM(LEN(B1)-LEN(SUBSTITUTE(B1,A$1:A$11,""))),"あり","")}
  (配列数式)
    • good
    • 0
この回答へのお礼

回答番号:No.3~6のみなさん
ご回答ありがとうございました。
今回は下記で済ませてしまいましたが
またこの別解答を利用させていただくこともあると思います。
どうもありがとうございました。

お礼日時:2010/01/12 13:20

別解


C1: =IF(SUMPRODUCT(LEN(B1)-LEN(SUBSTITUTE(B1,A$1:A$11,""))),"あり","")
    • good
    • 0
この回答へのお礼

回答番号:No.3~6のみなさん
ご回答ありがとうございました。
今回は下記で済ませてしまいましたが
またこの別解答を利用させていただくこともあると思います。
どうもありがとうございました。

お礼日時:2010/01/12 13:21

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,"")
    • good
    • 0
この回答へのお礼

回答番号:No.3~6のみなさん
ご回答ありがとうございました。
今回は下記で済ませてしまいましたが
またこの別解答を利用させていただくこともあると思います。
どうもありがとうございました。

お礼日時:2010/01/12 13:21

ごめんなさい。

式を試験せずに提示してしまいました。
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,"")
    • good
    • 0
この回答へのお礼

回答番号:No.3~6のみなさん
ご回答ありがとうございました。
今回は下記で済ませてしまいましたが
またこの別解答を利用させていただくこともあると思います。
どうもありがとうございました。

お礼日時:2010/01/12 13:20

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!