• ベストアンサー

可視セルの重複データを除いたデータをカウントする方法

可視セルの重複データを除いたデータをカウントする方法 Excel2003を使用しています。 A列~N列までオートフィルタを設定しています。 K列である特定の文字が入力されているセルを抽出しているときに表示されているC列のデータのうち、重複するデータを除いた個数を求めたいのですが、どうしたらよいでしょうか? 上記の状態で、C列のプルダウンに表示されているリストのデータ数が求めたい個数と同じになりますが、プルダウンに表示されているリストのデータ数をカウントする方法などあるのでしょうか? よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.2

1.フィルターがかかった状態でC列をタイトル行を含めてコピーします。 2.別シートに貼り付けます。これで可視データのみ張り付いたと思います。(2007では違うらしい) 3.貼り付けたタイトルを選択して、メニューの「データ」、「フィルタ」、「フィルタオプションの設定」 4.「重複するレコードは無視する」にチェックしてOK これで重複しないリストが表示され、画面下部のステータスバーに何件中何件と重複しない数が表示されます。 以上、エクセル2000で試しました。

KOH3193
質問者

お礼

回答ありがとうございます。 記載していただいたような作業的なことをしないと難しいのでしょうね。 関数の組み合わせ(?)みたいなもので、できないものかと過去の質問等を参考にしながら、いろいろと試してみましたが、うまくいかず…。 とりあえず、教えていただいた方法をマクロボタンにでも登録して、作業を簡略化してみようと思います。 ありがとうございました!

その他の回答 (3)

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.4

可視セルを数えるにはSUBTOTAL関数などが使われますが、重複するデータを除いた個数を求めることはできませんね。そこで作業列を設けて対応する方法ですが回答No2で示した方法ではオートフィルタとは関係なくK列に例えば あいう のある場合でC列の重複のないデータを求めるものでしたが、K列でのオートフィルタの操作ではあいうの場合とは限りませんね。そのような場合でも重複するデータを除いた個数を求める方法としてオートフィルタの操作の前にP2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(C2="","",IF(COUNTIF(C$2:C2,C2)=1,1,"")) その後に例えばQ1セルに =SUBTOTAL(9,P:P) と入力することでK列でのオートフィルタ後にC列で重複するデータを除いたデータの個数が表示されます。オートフィルタはK列でなくても他の列で行った場合でも問題なく対応することができますね。

KOH3193
質問者

お礼

再度の回答ありがとうございます。 他の条件下でも対応可能な方法…勉強になります。 今回も詳しく説明していただきまして、ありがとうございました。

  • KURUMITO
  • ベストアンサー率42% (1835/4283)
回答No.3

可視セルを数えるにはSUBTOTAL関数などが使われますが、重複するデータを除いた個数を求めることはできませんね。オートフィルタとは関係なくオートフィルタと同じような機能を持つ作業列を例えばP列に設け、2行目からデータがN列まででは入力されているとして、P2セルには次の式を入力して下方にオートフィルドラッグします。 =IF(AND(COUNTIF(K2,"*あいう*")>0,COUNTIF(C$2:C2,C2)=1),MAX(P$1:P1)+1,"") この式で あいう と使われているのは例えばK列で あいう の文字を含むというオートフィルタの条件を設定した場合のことです。 あいう の代わりにK列でのオートフィルタで使用する条件を使ってください。 その後に例えばQ1セルに =MAX(P:P) と入力することで重複するデータを除いたデータの個数が表示されます。ここで重複するデータを除いたといってもそのうちの一つのデータはデータの個数に含めた式となっています。もしも重複するデータは一切数えないということでしたら、P2セルには次の式を入力して下方にオートフィルドラッグします。 IF(AND(COUNTIF(K2,"*あいう*")>0,COUNTIF(C:C,C2)=1),MAX(P$1:P1)+1,"") このような操作はオートフィルタを実施する以前の表で行います。その後にオートフィルタを行っても同じ結果が得られます。

KOH3193
質問者

お礼

回答ありがとうございます。 可視セルの個数、重複データを除いた個数、それぞれですと関数で求められたのですが、どちらの条件も満たす個数を関数で求めることはできないようですね。 同種類の過去質問を見ていても、作業列等使用することなくダイレクトに求めることはできないような感じはしましたが…。 できないということがわかっただけでも良かったです。 丁寧に説明していただき、ありがとうございました。

  • merlionXX
  • ベストアンサー率48% (1930/4007)
回答No.1

1.フィルターがかかった状態でC列をタイトル行を含めてコピーします。 2.別シートに貼り付けます。これで可視データのみ張り付いたと思います。(2007では違うらしい) 3.貼り付けたタイトルを選択して、メニューの「データ」、「フィルタ」、「フィルタオプションの設定」 4.「重複するレコードは無視する」にチェックしてOK これで重複しないリストが表示され、画面下部のステータスバーに何件中何件と重複しない数が表示されます。 以上、エクセル2000で試しました。

関連するQ&A

  • 関数で可視セルのデータ個数カウント

    Excel2002を使用しています。 オートフィルタで抽出したデータの個数を関数で カウントしたいのですが、可視セルのみをカウント 出来る関数はあるのでしょうか? 例えば   A 1 件数 2  2 3  1 4  3 5  1 6 関数 A6セルに何らかの関数を入れておき、 A列のオートフィルタを使って、1を抽出した時は A6に”2” 3を抽出した時はA6に”1”を表示させたいの です。 このように、可視セルのデータ個数のみを カウントする関数はありますでしょうか? フィルタを使わずにCOUNTIF関数でカウントする 方法、また、可視セルをコピー貼り付け後 カウントする方法は避け、あくまでフィルタで 抽出したデータの個数を瞬時にカウントしたいの です。 ご教授宜しくお願いします。

  • Excel2010重複しないカウントとフィルタ結果

    Excel2010で、重複しない文字をカウントしつつ、オートフィルターで 抽出をかけた時には表示したデータをカウントする関数を作成したいのですが うまくできません。 作成しているExcelの表には、オートフィルターが設定されています。 A列には複数名の人の名前が入っていて、名前には重複もあります。 オートフィルターでの抽出条件が指定されていない状態で A列の重複しない人数を下記数式で出しています。  =SUMPRODUCT(1/COUNTIF(A1:A100,A1:A100)) オートフィルターで、例えばA列で3人の名前を抽出した場合に、 上記数式が入っているセルに「3」と表示をさせたいのですが できますでしょうか? できれば作業列を使用することなく、ダイレクトに該当セルに算出できる方法が あれば知りたいです。 お分かりの方いらっしゃいましたらご教示頂けると助かります。 どうぞよろしくお願いいたします。

  • エクセルで、可視セルだけにコピペをしたい。

    宜しくお願い致します。 例えですが・・・ A列にはランダムで色んな果物の名前 B列には果物の色 C列はすべて空欄 (1)A列をオートフィルタで「りんご」を抽出 (当然ですが、抽出された行は飛び飛び状態です。) (2)抽出したデータのみ、C列に「おいしい」と入力する。 このようにいたってシンプルな作業なのですが、 抽出した状態で、C列の一番上のセルに「おいしい」と入力し、 それをCtrl+Cでコピーし、Ctrl+↓キーで一番下まで貼り付け をしたら、C列の可視セル以外のところにも貼り付けられてしまったのです。こういうやり方は間違ってるのでしょうか。 ためしに、新規にexcelを開いて、同じようにコピペしたら 可視セルのみ貼り付けされてたんです。 状況によっては、上記のやり方だと可視セル以外も貼り付けられてしまうことがあるのでしょうか。 分かりにくくて申し訳ありませんが、宜しくお願い致します。 あるんでしょうか。

  • 同一セル中にある重複データをカウントしたい

    例えば、A1セルに「2, 2, 2, 3, 12, 22」というカンマで区切ったデータがあり、B2セルに2の個数をカウントしたい(12、22はカウントしない)時、どうすればいいのでしょうか?

  • エクセルで重複したものを除いてデータの個数をカウントしたい

    エクセルで重複したものを除いてデータの個数をカウントしたい 添付画像のように抽出するにはどういうやり方があるのでしょうか? 教えてください。よろしくお願いしますm(_ _)m

  • 空白セルの削除と重複データの加算のマクロ

    シート1の文字列のデータの0又は空白のセルを取り除いて、並んでいる文字列の左と真ん 中の数が重複しているデーターは左端の数を加算して別のシート2のC10からC100のセルに抽出できるマクロを教えて下さい。データーの0は関数で空白にしたいと思っています。 データの並び方はこのままで重複するデーターの加算と空白のセルの削除を一回のマクロで実行したいのです。  E列               空白を削除    0-4-1              0-4-1         2-3-2              2-3-2         2-2-3              2-2-(3) 0                 2-2-(1) 2-2-1              4-1-9 4-1-9              2-1-7 2-1-7              2-2-3 0                 2-3-(5)                (数式がある空白セル)   2-3-(1)            2-2-3              2-3-(4) 0                 0-4-1 2-3-5 2-3-1 2-3-4 0-4-1 シート2のB列10~100に抽出 0-4-1 2-3-2 2-2-4 4-1-9 2-1-7 2-2-3 2-3-10 0-4-1 このように抽出したいのです。

  • データの無いセルをカウントしない方法

    下記の数式で、各数字の合致数を求めて表示しています。 =SUMPRODUCT(COUNTIF(I4:J4,B2:C3000)) 求めるデータ数が、毎回違う為、範囲をB2:C3000としています。 データがC3000迄無い場合、空欄のセルをゼロと認識して、ゼロのカウントが増えてしまいます。 空欄の部分は、ゼロとしてカウントせず、データが入っている部分だけカウントする方法はありますでしょうか? ご教授、宜しくお願いします。

  • 重複したデータを除き、別セルに表示したい。

    EXCEL初心者です、教えてください。 セルB2から列方向に、 品名・A・B・A・B・B・Cと入力しフィルタオプションを使って  指定した範囲、リスト範囲、検索条件、抽出範囲、重複するレコードは無視、を指定 そうしますと セルD2に 品名・A・B・Cと絞込みができました。 しかし列Bの品名は毎日変わるので、品名以下(設定範囲)と列D(抽出範囲)をDeleteで削除 翌日のデータを入れたところ抽出範囲である列Dは動かず 毎回あらためて設定しなくてはならず大変です。 1度設定したら何回も使える方法はないでしょうか?                                                             

  • 【Excel】 可視セルへの貼り付けについて

    【Excel】 可視セルへの貼り付けについて Excel2003および2007を使用しています。 ピボットにて集計したデータを別データに貼り付けしたいのですが、 その別データをフィルタで絞って、可視セルのみに貼り付けしたいのですが、 うまくいきません。 非表示のセルにも貼り付けされてしまいます。 可視セルのみに貼り付けできる何かいい方法はありますでしょうか? ちなみに貼り付け方法は 値のみ を希望です。 (例) ◎ ピボットデータ・・・  A B A B A B ◎ 貼り付け先データ・・・ A B C A B C A B C ・・・ABのみフィルタで絞って、ピボットデータを貼り付けしたい。 Cは非表示なので貼り付けしたくない。 よろしくお願いします。

  • 可視セルから可視セルへのコピー&ペーストについて

    こんばんは、教えてください!! 可視セル(表)から可視セル(表)へのコピーはどうすれば可能でしょうか。 今1つのブックに表があって4人で表を埋めていく作業をしています。 表にフィルターをかけてそれぞれ担当の項目をフィルターで表示させ表を完成させていく作業をしています。また1つのファイルを共有にしていなく、それぞれコピーをしているので最終的に4つのファイル(同じファイルで各担当の項目のみ埋まっているもの)が集まりそれらを1つにまとめなければなりません。 今、まとめている作業をしているのですが、まとめる表も担当の表もどちらもフィルターをかけた状態にしてコピー・ペーストをしようとしています。 そうすると例えばフィルターを使ってAさんのファイルを抽出し、まとめる表にコピーをしようと可視セルの選択をしてコピーを使ってみたのですが、貼り付け たものは表示されていない行にも貼り付けされます。 可視セルのみを可視セルにペーストするにはどうすればいいのでしょうか。 かなり長い文章になりました、すみませんが助けてください!!!!

専門家に質問してみよう