- ベストアンサー
エクセルオートフィルタ時のカウント
1行1件としてデータ集計をしています。 例) ABC 1 7/1 ○ xxx 1 2 7/2 △ aaa 1 3 7/2 ○ xxx 1 4 7/3 □ zzz 1 5 7/4 □ aaa 1 例えば、オートフィルタで○だけカウントしたいのですが(答=2)、 カウンタ関数ですと全体数(選択していないデータも)カウントされてしまいます。 (上の場合は「5」となります) SUBTOTALのようにオートフィルタで選択したデータのみの個数を数える ことはできないのでしょうか? 現在は各行の最後に「1」を入れ、最終行でSUBTOTALしています。 これで用は足りていますが、もう少しかっこよくできたらなぁと 思っています。 ど素人な質問ですみません。 マクロなど全くわかっていません。 どなたかご教授ください。
- みんなの回答 (3)
- 専門家の回答
質問者が選んだベストアンサー
SUBTOTAL関数を調べてみるとすぐ分かると思います。 SUBTOTAL(集計方法,参照範囲) 引数の集計方法は 非表示の値を含める 非表示の値を無視する 関数 1 101 AVERAGE 2 102 COUNT 3 103 COUNTA 4 104 MAX 5 105 MIN 6 106 PRODUCT 7 107 STDEV 8 108 STDEVP 9 109 SUM 10 110 VAR 11 111 VARP となっており、今回非表示行は含めずで○のカウントなので =SUBTOTAL(103,参照範囲) になります
その他の回答 (2)
- mu2011
- ベストアンサー率38% (1910/4994)
NO1です。 >オートフィルタで選択したら自動で個数を数えたいのですが ⇒SUBOTAL関数「=SUBTOTAL(3,B列のデータ範囲)では駄目なのでしょうか。 わざわざD列に「1」を入力しておく必要はないと思います。 参考.仮にE1に入力規則でリスト定義し、E2に=COUNTIF(B:B,E1)と設定しておけばオートフィルタを掛けずに個数を抽出できますが如何でしょうか。
お礼
SUBTOTAL関数は知っていたのですが、集計方法「9」を意味も考えず使っていました。勉強になりました。 そして、無事解決しました。 参考の方法も試してみます。ありがとうございました。
- mu2011
- ベストアンサー率38% (1910/4994)
一例です。 =COUNTIF(B:B,"○")
補足
さっそくありがとうございます。 オートフィルタで選択したら自動で個数を数えたいのですが、COUNTIFだと都度条件を書き替える必要がでるのでは? 書き替えなくて済む方法があるのでしたら、それも併せて教えていただきたいのですが・・・すみません。 ちなみにカウンタとして使用するのは「C」列、オートフィルタで選択するのは「B」列になります。 質問の仕方が悪くすみません。よろしくお願いします。
お礼
SUBTOTAL関数についてとても勉強になりました。 おかげさまで無事解決しました。 ありがとうございました。