dポイントプレゼントキャンペーン実施中!

エクセルの基本的な質問で失礼します。

現在、以下のようなエクセルを作っています。
ちょっと分かりにくくて恐縮ですが…
元データであるシート「2」のA列にカンマ区切りで入力されている複数の数字を、
シート「1」で1つの数字ごとに横列に並べて、該当しているものには○を出すとしたいのです。

ただ、シート「1」のA1で
『=IF(COUNTIF('2'!A1,1)=1,"○","")』とすると、
セルが「1」のみの時しか○が表示されず、「1を含む場合」は○が出ません。

『=IF(COUNTIF('2'!A1,"*1*")=1,"○","")』ともしたのですが、
そうすると「1」のみの時にも○が表示されなくなってしまいました。

この場合、どういう式にするのが適切でしょうか?
恐れ入りますが、ご教示のほどよろしくお願い申し上げます。

-------------------------------------
シート「1」
-------------------------------------
A1「シート2のA1で1を含んでいる場合には○」
 B1「シート2のA1で2を含んでいる場合には○」
  C1「シート2のA1で3を含んでいる場合には○」
以下同様…
-------------------------------------
シート「2」
-------------------------------------
A1「1,2,3,4」
A2「3,5」
A3「2」

A 回答 (5件)

回答No1、No3です。

No3の回答は数値が二桁以上での対応の仕方ですが、一部誤りがありましたのでていさせてください。シート2でデータを区切り位置でそれぞれの列に分解するまでは良いのですがそれをコピーしてシート1に貼り付けると述べてしまいましたが、貼り付ける操作は必要ありません。
シート1のA1セルに次の式を入力して右方向にオートフィルドラッグしたのちに下方向にもオートフィルドラッグします。

=IF(COUNTIF('2'!1:1,COLUMN(A1))=0,"","〇")

この式では並んだセルの範囲内に列番号と同じ数値があるかどうかを調べるものでCOUNT関数を使っています。
    • good
    • 0

こんにちは!


すでに回答は出ていると思いますが・・・

一例です。

Sheet1のA1セルに
=IF(ISNUMBER(FIND(COLUMN(A1),INDEX(Sheet2!$A$1:$A$100,COLUMN(A1)))),"○","")
という数式を入れ、列方向にコピーしてみてください。
希望に近い形にならないでしょうか?

以上、参考になれば良いのですが
的外れなら読み流してくださいね。m(__)m
    • good
    • 0
この回答へのお礼

ご返信おそくなってしまってごめんなさい。
ご回答ありがとうございました!
解決することができました。どうもありがとうございました。

お礼日時:2010/04/13 20:52

回答No1です。

もう一つの方法としては、シート2でA列を選択したのちに「データ」タブから「区切り位置」を選択します。
表示される画面で「カンマやタブ・・・」にチェックがあることを確認して「次へ」、区切り文字の項で「カンマ」にチェックをし、「次へ」、「完了」でデータがそれぞれに分かれて表示されますのでそれらの範囲をコピーしてシート1のA1セルに貼り付けをすればよいでしょう。
    • good
    • 0

その数式を活用する方法でシート2のA列を文字列にしては如何でしょうか。



シート1のA列を選択→データ→データ区切り位置→次へ→次へ→列のデータ形式を文字列→OK
    • good
    • 0
この回答へのお礼

ご返信おそくなってしまってごめんなさい。
ご回答ありがとうございました!

文字列にすれば大丈夫だったのですね。

お礼日時:2010/04/13 20:52

COUNTIF関数ではなく一つの文字列の中にある文字(たとえば1)が含まれているかどうかはFIND関数を使います。

しかしそのままでは含まれていない場合にはエラーとなってしまいます。そこでNOT(ISERROR(を使うことがよいでしょう。
シート1のA1セルには次の式を入力して右横方向にオートフィルドラッグしたのちに下方にもオートフィルドラッグします。

=IF(NOT(ISERROR(FIND(COLUMN(A1),'2'!$A1))),"○","")

なお、この式では数値が9までは対応できますが二桁の数字がシート2にある場合には対応できません。
    • good
    • 0
この回答へのお礼

ご返信おそくなってしまってごめんなさい。
ご回答ありがとうございました!
2桁だったので、2つめにいただいた方法で解決しました。
どうもありがとうございました。

お礼日時:2010/04/13 20:50

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