エクセルでSUMPRODUCT関数を使う方法
エクセルで2つ以上(複数)の条件を満たす値をカウントしたい。
そう思った果てにここに辿り着いたあなた。
よかったです。きっとここで解決できるでしょう。
たとえば、この図。
※画像が枠からはみ出てますが気にしないで下さい(笑)
別画面表示にすると本文が読みにくいので、
あえてこのままにしてあります。
「東京」かつ「男子」の人数を出す場合はこれでOK
=SUMPRODUCT(($A$2:$A$11=D2)*($B$2:$B$11=E2))
式を入力しているセルは「F2」
この式の「$A$2:$A$11=D2」が「東京」か「大阪」を選別する式。
「$B$2:$B$11=E2」が「男子」と「女子」を選別する式。
このD2とE2は今回のように入力済みのセルを参照してもいいし、
直接値を式に入れ込んでもOKです。
直接、式に値を入れる場合は、こうなります。
=SUMPRODUCT(($A$2:$A$11="東京都")*($B$2:$B$11="男子"))
3つ、4つと条件が重なってくる場合は
下のように、とどんどんつなげていけばOK。
「=SUMPRODUCT((式A)*(式B)*(式C)*(式D)*(式E))」
次にちょっと発展版。
「10代」の「男子」のみを求めたい場合。
その場合は、こうします。
=SUMPRODUCT(($B$2:$B$11>=10)*($B$2:$B$11<20)*($A$2:$A$11=D2))
今回の場合は、「男子」という値はあっても、
「10代」という値はありませんので、
「10代」という年齢の幅を範囲指定しています。
今回は「>=10」が10歳以上という意味
「<20」が20歳未満という意味です。
これが分かると年齢以外でも、
ある一定期間の合計なども出せるわけですね。
値を求めたい始まりの日付と
値を求めたい終わりの日付を
今回の式に当てはめると求められるわけです。
Excel2007以降であれば、複数条件でカウントできるcountifsなどの関数がありますが、Excel2003以前のバージョンを使っている場合は、SUMPRODUCTは必須ではないかと思います。
スポンサーリンク