条件別に合計するSUMPRODUCT関数

2013Excel関数技BEST55回 SUMPRODUCT関数

別シートから条件別に合計するSUMPRODUCT関数

前回の関数技54回でSUMPRODUCT関数の基本的な使い方を紹介しましたが、今回はSUMPRODUCT関数でこんなこともできるんだという、別シートから日付を含む条件別に合計する方法を紹介します。
(サンプルファイルは、こちらから 2013関数技55回サンプルデータ

SUMPRODUCT関数に日付の関数

日付を含む条件で集計値を求めるには、年が条件ならYEAR関数、月が条件ならMONTH関数、日が条件ならDAY関数を使って求めることができます。
ではサンプルで見てみましょう。商品ごとの納期済みの商品の個数が入力されています。
月別の合計を別シートに表示1
別シートに、このような納品数一覧表をつくり、商品ごとの納品数を集計したいのです。
月別の合計を別シートに表示2

SUMPRODUCT関数にMONTH関数

A4に入力する式を、考えてみましょう。まず、月ごとに集計するということですね。
A3に2014年4月とありますから、A3と同じ月なら集計するという式にします。
月別の合計を別シートに表示3
関数の入力ボタン、あるいは数式タブの数学/三角関数からSUMPRODUCT関数を入力します。 SUMPRODUCT関数の配列1に、日付時刻関数のMONTH関数を入れ子(NEST)します。範囲は、システム1.6!B3:B8
月別の合計を別シートに表示4
入力する式は、
=SUMPRODUCT((MONTH(システム1.6!B3:B8)=MONTH(A3))*システム1.6!C3:C8)
分解して考えると、論理式の
MONTH(システム1.6!B3:B8)=MONTH(A3)
で4月ならTRUE=1、そうでないとFALSE=0が入るので、積は、4月だけ計算されます。
SUMPRODUCT関数は、結果を合計するので、4月の納品数だけがカウントされるというわけです。
月別の合計を別シートに表示5
式をコピーする前に、範囲を絶対参照にしておきます。
月別の合計を別シートに表示6
いかがでしょうか?SUMPRODUCT関数を使うと、余計な合計欄を必要としないので、すっきりとした表が完成します。
今日の講義は以上です。お疲れ様でした。
もっと知りたいSUMPRODUCT関数の使い方