教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows

 

 

Excel:COUNTIF関数で複数条件(AND・OR)を指定する方法

 

 


 


 

 

 

CountIf関数では、条件に合致した個数を数えることができます。

=CountIf(範囲,条件)

複数の条件を指定したい場合は、次の方法があります。


  AND条件を指定したい

■ 方法1  COUNTIFS関数を使う  (Ver2007以降 の関数。2003まではSUMPRODUCTDCOUNTを使う)

COUNTIFS関数を使うと複数条件に合致したものをカウントできます。(AND条件 )

 

= COUNTIFS(条件範囲1,"条件1",条件範囲2,"条件2",条件範囲3,"条件3"…)

例:【区内】で【60歳以上】を数える(AND条件)

=COUNTIFS(D1:D7,"区内",C1:C7,">=60")   結果2

 

■方法2  DCOUNT関数を使う

DCOUNT/DCOUNTA関数では、複数条件に合致したものを数えることができます。AND/OR条件、それらの組み合わせ等複雑な条件が可能です。

=DCOUNT ( データベース , 集計したいフィールド名 , 条件エリア
DCOUNT関数の使い方はこちら

 

■方法3  SUMPRODUCT関数を使う(2003以前のExcelでCOUNTIFSが使えない場合)

= SUMPRODUCT((範囲1の条件)*(範囲2の条件)

 

例【区内】で【60歳以上】を数える

=SUMPRODUCT((D1:D7="区内")*(C1:C7>=60))

 

SUMPRODUCT関数は引数を指定するだけで配列計算できます。通常の形Sumproduct(配列1,配列2)では配列内の各要素を掛け、それを合計します。今回の場合【区内ならTrue(1),そうでないならFalse(0)】と【60以上ならTrue(1),そうでないならFalse(0)】という配列の各要素の結果(0か1)を掛け、1×1の場合のみ1が出るのでこれを合計することで個数を数えることができます。(1の合計=数を数える)詳しくはSUMPRODUCT関数の使い方参照。

 

 OR条件を指定したい

OR条件でカウントしたい場合は、DCOUNT関数を使うかCOUNTIFS関数を足し引きします。

 

■方法1  COUNTIFS関数を使う

◎ 同一フィールドならCOUNTIFSを足すだけでカウントできます。

 

◆ 4歳以下または60歳以上

=COUNTIFS(C1:C7,"<=4") + COUNTIFS(C1:C7,">=60")

 

◎ 異なるフィールドでは重複することがあるので、足した後に重複分を引く必要があります。

 

◆ 4歳以下または女

= COUNTIFS(B1:B7,"女")+COUNTIFS(C1:C7,"<=4")  結果 5

 

↑だけでは4歳以下の女が2回カウントされてしまう(4歳以下で1、女で1)ので 、【4歳以下かつ女】数分、引きます。

 

= COUNTIFS(B1:B7,"女")+COUNTIFS(C1:C7,"<=4") - COUNTIFS(B1:B7,"女", C1:C7,"<=4")

 

 

■方法2  DCOUNT関数を使う

DCOUNT/DCOUNTA関数では、複数条件に合致したものを数えることができます。AND/OR条件、それらの組み合わせ等複雑な条件が可能です。

=DCOUNT ( データベース , 集計したいフィールド名 , 条件エリア
DCOUNT関数の使い方はこちら

 

 

教えて!HELPDESK      Excel     Word      Outlook      Power Point      Windows