• ベストアンサー

COUNTIFで複数の条件設定(エクセル)

同じような質問の方がいたのですが、どうも自分のケースに応用できなかったので質問です。 A  B・・・・F    Aの列に、性別              Fの列に、年齢  男性      9    男性      8 女性      32 「6~12歳」で、「男性」の数をカウントしたいのですが… 2行以上だと、COUNTIFでは無理なのでしょうか? 初歩的質問でお恥ずかしいですが、教えてください!

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

  • ベストアンサー
  • mu2011
  • ベストアンサー率38% (1910/4994)
回答No.1

次の方法で如何でしょうか。 (例)=SUMPRODUCT((A1:A10="男性")*((F1:F10>5)*(F1:F10<13)))

gozaemon
質問者

お礼

うまく行きそうです!助かりました。ありがとうございました!

その他の回答 (2)

  • mshr1962
  • ベストアンサー率39% (7417/18945)
回答No.3

=SUM(IF((A1:A99="男性")*(F1:F99>=6)*(F1:F99<=12),1)) でCtrl+Shift+Enterで確定して配列数式する。 または =SUMPRODUCT((A1:A99="男性")*(F1:F99>=6)*(F1:F99<=12)) 別の方法として 「データ」「フィルタ」「オートフィルタ」で「男性」「6以上 And 12以下」で ステータスバーに件数表示するかSUBTOTAL関数で件数をカウントする。 「データ」「ピボットテーブル」で「性別」を行に「年齢」を列に設定し 確実に入力のある項目をデータに「データの個数」として集計させる。 年齢の6~12を選択して、グループ化させる。

gozaemon
質問者

お礼

今、オートフィルタでやっていたのですが、データが多いせいか、すごく待ち時間がかかります・・・。 ピポットテーブルはいい案ですね。 ありがとうございます。

回答No.2

CountIF関数の検索条件は一つしか指定できません こういう場合の私は「AND関数」を使います 表の入力状態が以下の通りだとします --------------------------------------------------     A列  F列  G列 1行目 男性   9 2行目 男性   8 3行目 女性  32 -------------------------------------------------- まずセルG1に「=AND(A1="男性",F1>=6,F1<=12)」という式を入力します AND関数を使うと、セルA1が男性で、セルF1が6以上12以下なら、TRUEを表示します どれか一つでも該当しない項目があると、Falseになります セルG1の式をコピーして、他のセル(G2やG3など)に張り付ければ 式がコピーされます では、どこか別のセル(たとえばセルH1)に次の式を入力してください =COUNTIF(G1:G3,TRUE) これは「G1からG3までで、TRUEの項目だけカウントしなさい」という式です 表の通りだと、2となると思います あんまり賢くない方法ですが 後から見直しても分かりやすいので この方法でしています

gozaemon
質問者

お礼

やはり、一段階おかないとだめですか~。6~12歳、のほかにこれからどんどん13~15歳、16~19歳とカウントしていかなくてはいけないので、気が遠くなりそうですが・・・。 アドバイス、ありがとうございます!

関連するQ&A