SUM関数、SUMIF関数、SUMIFS関数に関して、取り上げました。
以降、SUM関数、SUMIF関数、SUMIFS関数をSUM関数シリーズと呼びます。
SUM関数、SUMIF関数、SUMIFS関数の違いに関しても簡単に触れましたが、
イマイチに違いを理解できなかった方のため、番外編として本記事を作成しました。
本記事では、SUM関数シリーズの違いと使い分けを関してお伝えできればと思いますが、
筆者の見解である点をご留意頂ければ幸いです。
Contents
SUM関数シリーズの違い
出来る範囲と制限
- SUM関数:同じ範囲内の数値セルの合計を計算可能。
SUM関数単体では条件を指定しての計算は不可 (※1)。条件の数 = 0 - SUMIF関数: 1つのみの条件に一致するセルの合計を計算可能。
1つ以上の条件の指定ができない。条件の数 = 1 - SUMIFS関数: 1つ以上の条件に基づいてセルの合計を計算可能。
条件の数が1以上が必須。条件の数 >= 1。
関数 | 出来る範囲 | 制限 | 条件の数 |
---|---|---|---|
SUM関数 | 同じ範囲内の数値セルの合計を計算 | 条件に基づいて合計を計算できない (※1) | 0 |
SUMIF関数 | 1つのみ条件に一致するセルの合計を計算 | 1つ以上条件の指定ができない | 1 |
SUMIFS関数 | 1つ以上の条件に基づいてセルの合計を計算 | 条件の数が1以上である必要がある | 1以上 |
※1:
SUM関数では、条件に基づいて合計を計算することはできないが、
IF関数を組み合わせて使用すれば、条件に応じて合計を計算できます。
しかし、労力はかかりますし、間違いやすいです。
SUMIF関数とSUMIFS関数の登場した背景が、
SUM関数とIF関数を併用したいという考えからと思います。
条件の数の重要性に関して
- SUM関数は条件を指定することはできず、すべての数値を合計します。
したがって、条件の数 = 0。 - SUMIF関数は1つのみの条件を指定して一致するセルの合計を計算します。
したがって、条件の数 = 1。 - SUMIFS関数は、1つ以上の条件を指定できます。1つ以上の条件を満たすセルの合計を計算します。
したがって、条件の数 >= 1。
ただし、条件の数=1であれば、通常は「SUMIF関数」を使用すれば事足ります。
つまり、関数の違いは条件の数です。
構文の違い
SUM関数: SUM(範囲)の形式。
SUMIF関数: SUMIF(範囲, 条件, 合計範囲)
SUMIFS関数: SUMIFS(合計範囲, 条件範囲1, 条件1, 条件範囲2, 条件2, …)
SUM関数は、範囲の合計計算に使う範囲を指定します。
つまり、合計範囲のみ、条件部分の引数がありません。
SUMIF関数は、範囲, 条件部分の引数が1つしかありません。
一方、SUMIFS関数は、
条件範囲1, 条件1, 条件範囲2, 条件2, …のように、
条件部分の引数が1つ以上存在します。
また、SUMIF関数とは異なり、
最初の引数として合計範囲を指定し、
その後に条件範囲と条件が続きます。
(SUMIF関数は、最初の引数として条件範囲と条件を指定し、その後に合計範囲が続きます)
これは、おそらく、条件部分の引数が増減するために、
このような順になっていると思われます。
また、SUM関数は初期、SUMIF関数は2007、SUMIFS関数は2010にリリースされている。
リリース後のため、引数の順序や表記揺れを統一できなかったのではないかと考えている。
関数名の違い
関数名が違うのは当たり前じゃないかと思うかもしれません。
この関数名にこそ秘密があり、Microsoft社の想い、関数の意味が隠れています。
条件(IF)が足されて、SUMIF関数
複数形(S)の条件(IF)が足されて、SUMIFS関数
条件の「IF」に複数形の「S」が付与されています。
つまり、条件の数によって関数名が変わっているのです。
SUM関数シリーズの命名規則からも、「条件の数」が肝となっていることが分かりますね。
使い分け
SUM関数とIF関数の組み合わせまで考慮して考えると、
SUM関数、SUMIF関数、SUMIFS関数はかなり類似しています。
使い分けはどうしたら良いでしょうか。
結論としては、
- 条件がない場合は、SUM関数
- 条件がある場合は、SUMIFS関数(条件の数が1つでも)
が良いでしょう。
SUM関数は自明の理です。
問題はSUMIF関数とSUMIFS関数の使い分けです。
なぜ、SUMIFS関数が良いのでしょうか。
汎化性能が最も高いのは、SUMIFS関数だからです。
いやいや、汎化性能は高いけど、引数が増えるので複雑さになるでしょう・・・
と思うかもしれません。
実はそんなことはありません。
なぜならば、条件が1つだからです。
条件が1つの場合は、SUMIF関数もSUMIFS関数も、引数の数は3つで同じです。
したがって、何も複雑ではありません。
慣れの問題です。
【ちょっと小話】SUMIF関数とSUMIFS関数は、SUM関数の代用にもなる
SUMIF関数とSUMIFS関数はSUM関数の代用になります。
どういうことでしょうか。
SUMIF関数とSUMIFS関数の条件を、すべてのデータに合致する条件を指定すれば、
SUM関数と同じ結果になります。
例えば、男性のみデータのため、SUMIF関数/SUMIFS関数の条件を男性にすれば、
SUM関数は同じ結果になりますね。
なので、実は、SUMIF関数とSUMIFS関数ですべてのSUM関数シリーズを代用できるのです。
まとめ
SUM関数、SUMIF関数、SUMIFS関数は、
Excelで数値データを効率的に処理する際に強力なツールです。
これらの関数を適切に活用することで、
データの合計計算や条件に基づいたデータ抽出が簡単に行えます。
SUM関数は単純な合計計算に、
SUMIF関数は1つのみ条件のデータ抽出に、
そしてSUMIFS関数は1つ以上の条件の元でのデータ抽出に向いています。
条件の数に応じて、適切な関数を選択しましょう。
また、関数名に含まれるヒントを活用して、
条件の数に関する理解を深めることができます。
Excelの関数は、データ分析と効率化において強力な味方となることでしょう。
この記事を参考にして、Excelの関数を使いこなし、
データ処理のスキルを向上させてください。
参考記事
Excel関数自体の原理原則に関する記事です。こちらを参照すると、個別の関数の理解がさらに深まるでしょう。