教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

 

Excel2010  配列数式:複数条件でカウントする

 

 


 


 

 

■ 配列数式で複数条件でカウントする方法

配列数式ではOR関数・AND関数 が使えないため次のいづれかで行います。

  • AND条件  {=COUNT(IF((条件1)*(条件2),配列A))}  ★ Count関数なのでカウントする配列は数値/シリアル値を指定。

  • OR条件   {=COUNT(IF((条件1)+(条件2),配列A))}
      または

  • SUMPRODUCT関数を使う … SUMPRODUCT((条件1)*(条件2))   ★ 条件に合致したセルの個数を数える(AND条件)

 ◎注◎

配列数式を使ってカウントするのはセル×セルが20以上の個数を数える…のような場合です。単純な条件なら(○を数える、値が20以上を数える…など)はCOUNTIF・COUNTIFSでカウントできます。


 

■ 複数条件でカウントしてみよう【配列数式】

◎補足◎

COUNT関数は数値セルを数えるので、IF関数で返す範囲は数値や日時のセルを指定します。 (数値や日時セルがない場合は隣接する空白列を指定すればOK!)(★SUMPRODUCT関数では条件に合致したセルを数えるのでどの種類でもカウント可能)

 

(1) 金額(価格×個数)が250円以上は何日? (2) 金額が300円以上で男は何人?(3) 9月2日以降で女で個数4以上は何人?

 

(1)  金額(価格×個数)が250円以上は何日?

{=COUNT(IF(C2:C12*D2:D12>=250,A2:A12))}  → 8

◎ SUMPRODUCT関数なら →  SUMPRODUCT((C2:C12*D2:D12>=250)*1)  ★配列を指定するだけ

※価格×個数は配列数式なのでCOUNTIFは使えません。

 

 

 (2) 金額(価格×個数)が300円以上で男は何人?

{=COUNT(IF((B2:B12="男")*(C2:C12*D2:D12>=300),A2:A12))}

◎ SUMPRODUCT関数なら →  SUMPRODUCT((B2:B12="男")*(C2:C12*D2:D12>=300))  ★配列を指定するだけ

※価格×個数は配列数式なのでCOUNTIFは使えません。

 

 

(3) 9月2日以降で女 で個数4以上は何人?(Countifsでも出せます(配列数式にしなくてもよい)下記 ◆1参照)

{=COUNT(IF((A2:A12>=A5)*(B2:B12="女")*(D2:D12>=4),A2:A12))} → 1

◎ SUMPRODUCT関数なら →  SUMPRODUCT((A2:A12>=A5)*(B2:B12="女")*(D2:D12>=4)) ★配列を指定するだけ

◎ COUNTIFS関数なら → COUNTIFS(A2:A12,">="&A5,B2:B12,"女",D2:D12,">=4")  ◆1

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows