SUMIFS関数で複数の検索条件に合ったデータのみ合計する方法

前回はSUMIF関数について解説しました。

SUMIF関数で条件に合ったデータのみ合計する方法 | Excelを制する者は人生を制す ~No Excel No Life~

なお、SUMIF関数ではひとつの検索条件でしたが、複数の検索条件に合ったデータのみを合計したい場合もあるかと思います。

そんなときは、Excel2003まではSUMPRODUCT関数などの並列関数でなんとかするしかありませんでしたが、Excel2007以降はSUMIFS関数が新設され、複数条件の値の合計値を算出することが容易になりました。

これは、私にとっても日頃の処理の中の手間と小さなストレスがなくなった出来事でした♪

今回は、このSUMIFS関数を用いて複数の検索条件に合ったデータのみ合計する方法について解説していきます(・∀・)

SUMIFS関数の基本構成

SUMIFS(合計対象範囲,検索範囲1,検索条件1,[検索範囲2,検索条件2],[検索範囲3,検索条件3],…)

合計対象範囲

合計対象のセル範囲を指定します。

SUMIF関数ではこの要素の順番が真逆です。(SUMIF関数では一番最後)
混同しないようにご注意ください。

検索範囲1(2以降も同様)

[検索条件]を抽出する範囲を指定します。

[検索範囲]と[検索条件]の数字がそれぞれ2つ1組のセットになっています。

検索条件1(2以降も同様)

検索対象の文字列やセル番地を指定します。

検索条件に関する考え方はCOUNTIF関数と一緒です。(詳細は下記記事参照)

COUNTIF関数で覚えておくと捗る検索テクニック | Excelを制する者は人生を制す ~No Excel No Life~

SUMIFS関数の使用例

今回のサンプルでは、カテゴリごとに日別の合計値を算出したいとします。

SUMIFS関数の使い方①

その場合、条件はB列の「発生日」とC列の「カテゴリ」の2つとなります。

数式を作成する際は、起点となるH4セルにまず記述していきます。

最初は、[合計対象範囲]となD列を指定します。

続いて、検索条件の一つ目、”日付”はB列にあるため、[条件範囲1]はB列を指定し、[検索条件1]はH3を指定しておきます。

この際、後々コピペすることを見越して、[条件範囲1]は行列ともに絶対参照、[検索条件1]は行は絶対参照、列は相対参照にしておきます。

最後に、検索条件の二つ目、”カテゴリ”はC列にあるため、[条件範囲2]はC列を指定し、[検索条件2]はG4を指定しておきます。

この際、後々コピペすることを見越して、[条件範囲2]は行列ともに絶対参照、[検索条件2]は行は相対参照、列は絶対参照にしておきます。

絶対参照・相対参照を間違いなく設定しておくと、H4セルの数式をコピーし、H4:AL7の全域にペーストすることで一括処理が可能になります(・∀・)

SUMIFS関数の使い方②

ワークシート上で確認すると、上図のようになります。

まとめ

SUMIFS関数は”S”が追加されただけあって複数の条件(IF)を抽出することができるようになったので最高に便利です。

今までのSUMPRODUCT関数を活用する方法では、たとえば条件範囲を列指定できず、必ず行番号まで指定しなければならなかったり、数式が若干分かりにくいものでした。

しかし、SUMIFS関数であれば、[合計対象範囲]の位置がSUMIF関数と真逆な部分を除けば、構成要素はSUMIF関数で知っていることをベースに使用することができるので理解しやすいです。

Excel2007以降に切り替えた方でまだExcel2003時代のSUMPRODUCT関数を活用しているのであれば、このSUMIFS関数に切り替えることをおすすめします♪

次回以降は、AVERAGE関数などの基本的な関数に立ち返って解説していきたいと思います(・∀・)

この記事が気に入ったら
いいね ! しよう