Googleスプレッドシートで指定した範囲のデータ内で複数条件に一致するデータの平均値を出したい場合は、AVERAGEIFS関数を使用します。
平均を求める時に使うAVERAGE関数がありますが、それに条件が追加できるのがAVERAGEIF関数、条件が複数の時はAVERAGEIFS関数を使います。
INDEX
スプレッドシートのAVERAGEIFS関数の使い方
性別が「男」でクラスが「1」の生徒の平均点を表示する
2つの条件に一致する平均値を求める
性別が「男」の中でクラスが「1」の生徒の平均点を表示するには以下のような数式を入力します。
1. 平均点を表示させたいセルを選択します。
(今回はセルH4)
2. =AVERAGEIFS(D4:D13,B4:B13,F4,C4:C13,G4) と入力します。
=AVERAGEIFS(D4:D13,B4:B13,F4,C4:C13,G4)
- 平均範囲:点数。平均点を計算する範囲。
- 条件範囲1、条件1:セル範囲(B4からB13)内が「男」
- 条件範囲2、条件2:セル範囲(C4からC13)内が「1」
上記の条件(男でクラスが1)に一致した生徒の平均点は「77点」ということがわかりました。
上記の例では条件をセル選択していますが、直接文字を入力することもできます。
直接文字列を入力する時は、文字列を"(ダブルクォーテーション)で囲います。
数字の条件の時は不要です。
=AVERAGEIFS(D4:D13,B4:B13,"男",C4:C13,1)
AVERAGEIFSでの色々な条件の入れ方
AVERAGEIFS関数で指定する条件は、テキストの完全一致だけでなく、数字の条件やワイルドカードを使用して部分一致での条件も指定できます。
条件を数字の範囲で指定する時
数字の範囲で条件指定する時によく使用される演算子と意味は以下です。
下記の記号を使用することで、50点以上100点以下のように条件を数字の範囲で指定することができます。
記号 | 意味 | 入力例 |
= | 等しい | =100 |
<> | 等しくない | <>0 |
< | 未満 | <50 |
<= | 以下 | <=50 |
> | より大きい | >50 |
>= | 以上 | >=50 |
条件を文字列の部分一致で指定する時(ワイルドカード)
部分一致と呼ばれる条件の時にはワイルドカードで条件を指定します。
ワイルドカードとは、文字の代わりに*や?の記号を使用した条件指定の方法です。
「*」(アスタリスク):文字数を限定しない
条件の種類 | 条件 | 該当する例 |
前方一致 | 株式会社* | 株式会社A、株式会社ABC |
後方一致 | *株式会社 | A株式会社、ABC株式会社 |
部分一致 | *株式会社* | A株式会社B、ABC株式会社DE |
「?」(クエスチョンマーク):1文字の代わり
条件の種類 | 条件 | 該当する例 |
前方一致 | 株式会社? | 株式会社A |
後方一致 | ?株式会社 | A株式会社 |
部分一致 | ?株式会社? | A株式会社B |
スプレッドシートのAVERAGEIFS関数の構文
スプレッドシートのAVERAGEIFS関数は以下のように入力します。
引数 | 説明 |
---|---|
平均範囲 | 平均値を計算する範囲を指定。 |
条件範囲 | 条件を判別するセルの範囲です(例:A1:A10)。 |
条件 | 上記「範囲」で指定した範囲から何を探したいか、の条件をここで指定します。 数値、テキスト、日付、論理式、セル参照を指定できます。 |