無料でExcel並み!Google スプレッドシートの使い方
定番の関数をまとめて覚える。データの合計、平均、カウント
2020年4月7日 06:55
数値を合計、平均、カウントする時に使う関数はご存じですか? SUM(サム)、AVERAGE(アベレージ)、COUNT(カウント)ですね。「もし○○だったら~」という条件が必要な場合は、SUMIF(サム・イフ)、AVERAGEIF(アベレージ・イフ)、COUNTIF(カウント・イフ)が定番です。条件を表す「IF」付きの関数となります。
では、条件が複数の場合は? SUMIFS(サム・イフ・エス)、AVERAGEIFS(アベレージ・イフ・エス)、COUNTIFS(カウント・イフ・エス)です。複数形の「S」が追加されています。
条件が1つの時は、SUMIF/AVERAGEIF/COUNTIIF、条件が複数の時は、SUMIFS/AVERAGEIFS/COUNTIFSと使い分けているかも知れませんが、実は、「S」付きの「SUMIFS」「AVERAGEIFS」「COUNTIFS」のみを使っても問題ないのです。今回は、これらの関数の違いを確認していきましょう。
SUMIF関数の代わりにSUMIFS関数を使う
最初に、SUMIF関数の動きを確認します。構文は『=SUMIF(範囲, 条件, 合計範囲)』となります。引数[範囲]は、引数[条件]の検索対象です。以下の例では、「アルコール」の「売上」を合計したいので、入力する関数式は、「=SUMIF(B2:B7,G3,E2:E7)」です。
この例では、引数[条件]に指定する文字列がG3に入力済みです。なお、関数式で条件を直接指定する場合は「"アルコール"」と「"」(ダブルクォーテーション)で囲んでください。
結果は「67,460」となりました。条件は「アルコール」のまま、SUMIFS関数で書き換えてみます。
SUMIFS関数の構文は『=SUMIFS(合計範囲 ,条件範囲1, 条件1, ,条件範囲2, 条件2, ...)』となります。この例では条件が1つなので、I7に入力する数式は「=SUMIFS(E2:E7,B2:B7,G7)」です。
結果はSUMIF関数と同じく「67,460」となりました。SUMIFS関数は複数の条件を指定する時に使う、と決めつけてしまいがちですが、条件が1つでも問題なく動作します。
SUMIFS関数で複数の条件を指定する例として、『注文数が「20以上」』の条件を追加してみます。I9に入力する関数式は「=SUMIFS(E2:E7,B2:B7,G9,D2:D7,H9)」です。
追加する条件は、H9に入力済みです。条件を追加する際に、引数[条件範囲2]と引数[条件2]・・・、と追記するわけです。なお、関数式で条件を直接指定する場合は「">=20"」と「"」(ダブルクォーテーション)で囲みます。
SUMIF関数とSUMIFS関数の構文を比較すると、
=SUMIF(範囲, 条件, 合計範囲)
=SUMIFS(合計範囲 ,条件範囲1, 条件1, ...)
となります。引数[合計範囲]の位置が異なり、SUMIFS関数では、1つ目の引数に合計するセル範囲を指定します。
AVERAGEIF関数もAVERAGEIFS関数で代用する
AVERAGEIF関数とAVERAGEIFS関数の関係も、SUMIF関数とSUMIFS関数の関係と同じです。構文を比較すると、
=AVERAGEIF(範囲, 条件, 平均範囲)
=AVERAGEIFS(平均範囲 ,条件範囲1, 条件1 ,条件範囲2, 条件2, ...)
となります。1つ目の引数に平均する範囲を指定します。SUMIFS関数と同様ですね。AVERAGEIF関数とAVERAGEIFS関数の結果を比較してみましょう。
AVERAGEIFS関数で1つの条件を指定した場合、AVERAGEIF関数と同じ結果を求められることがわかりますね。ちなみに、AVERAGEIFS関数で複数の条件を指定する場合は、以下のようになります。
COUNTIF関数とCOUNTIFS関数は引数の順番も同じ
COUNTIF関数とCOUNTIFS関数の関係は単純です。引数の順番も同じで、それぞれの構文は、
=COUNTIF(範囲, 条件)
=COUNTIFS(条件範囲1, 条件1, ,条件範囲2, 条件2, ...)
となります。COUNTIF関数もCOUNTIFS関数も、条件範囲と条件の対で指定します。「S」付きのCOUNTIFS関数は「条件範囲と条件を複数指定できる」だけの違いです。動作を見てみましょう。
なお、COUNTIFS関数で複数の条件を指定する場合は、以下のようになります。
ほとんどの場合、SUMIF/AVERAGEIF/COUNTIIFは「S」付きのSUMIFS/AVERAGEIFS/COUNTIFSで代用しても問題ないと考えられます。旧バージョンのExcelで作成されたファイルなどとの互換性を考慮するなら、「S」無しの関数を使う必要があると考えられますが、意図せずに「S」有りと「S」無しの関数が混在している場合は、「S」付きの関数に統一することをおすすめします。