• ベストアンサー

エクセルで件数をカウントしたいが・・・

エクセル2000で作った名簿があります。 A-日付(年間分)、B-名前、C-住所、D-金額の並びです。 月別に何区の人が何人かという統計を作りたいので、 まずオートフィルタでC:住所を選択しました。 次にCOUNTを使ってAやDの数字の入った列を選択したのですが、結果の数字がものすごく大きく、どうもオートフィルタで見えていないセルもカウントしているように見えます。 表示されてる部分だけのセルの数を数えるにはどうしたらよいでしょうか。 ちなみに、A列で(以前教わった)一月分オートフィルで出そうとしましたが、 ”「2002/5/1」以上「2002/5/31」以下”としてもこの場合できませんでした。 2列でオートフィルを使うのは初めてではないのですが・・・ ぜひ御回答よろしくお願いします。

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

  • ベストアンサー
  • maruru01
  • ベストアンサー率51% (1179/2272)
回答No.1

こんにちは。maruru01です。 オートフィルタは見た目の操作なので、フィルタがかかったセルだけにCOUNT関数を使うのは多分出来ません。 したがって、条件カウントのCOUNTIF関数を使用します。 ただ、この例だと月と住所(区名)の2つの条件があるので単純には出来ないと思います。 なので、ちょっと面倒な方法を。 まず、表とは関係ないセルを3つ選び、1つを月、1つを区名、もう1つを合計とします。(どこでもいい) 例)月をM1に、区名をN1、合計をO1に選ぶ 次に表の端の列(例だとE列)の一番上のデータのセル(多分E2)に、 =IF(MONTH(A2)=$M$1,IF(ISERROR(SEARCH($N$1,C2)),"×","○"),"×") と入力します。ちなみにA列に日付、C列に住所が入っているとします。 そしてこの式をE列の一番下のデータの行までコピーします。(オートフィルで一気にドラッグすればいいでしょう) そうしたら、合計のセルO1に、 =COUNTIF(E2:Ex,"○") (xは一番下のデータの行番号を入力) とします。 これで、M1に月(数値)、N1に区名(○○区など)を入力すれば、該当する個数をカウントします。 ちなみにE列には○・×を入れましたが、別に何でも構いません。 また、他の人がもっと簡単な方法を回答してくれるかも知れません。 では。

hurry5me
質問者

お礼

結果的にはpapayukaさんに頂いた回答で解決できてしまいましたが、この方法もじっくり試してみたいと思います。 色分けして分別する方法でいろいろ考えたりしましたが、用途によってはこれから先利用できるかと…(^^) ご丁寧にありがとうございました。

その他の回答 (1)

  • papayuka
  • ベストアンサー率45% (1388/3066)
回答No.2

こんにちは。 例えば、表のA2がタイトルで、データがA3~A100だった場合 =SUBTOTAL(3,A3:A100) でフィルターをかけた人数を出せます。

hurry5me
質問者

お礼

なんと、こんなに簡単だとは。うまくいきましたヾ(@^▽^@) ありがとうございます。 また機会があればよろしくお願いします。