みんなのエクセル表計算
初級

【Excel】AVERAGEIFS関数-複数の検索条件に一致する平均値(算術平均)を返す関数-

約~分
(約文字)

2021-02-15

【Excel】AVERAGEIFS関数-複数の検索条件に一致する平均値(算術平均)を返す関数-

【Excel】AVERAGEIFS関数-複数の検索条件に一致する平均値(算術平均)を返す関数-

AVERAGEIFS関数とは

エクセルの「AVERAGEIFS関数」は複数の検索条件に一致する平均値(算術平均)を返す関数です。

まず結論

AVERAGEIFS関数を使うと、複数の条件をすべて満たすセルだけの平均値(算術平均)を求められます。条件が1つならAVERAGEIF関数でも足りますが、「部署がAかつ70点以上」のように条件を重ねたいときはAVERAGEIFSを使います。条件に合うセルが1つもないと#DIV/0!になるため、IFERROR関数で空欄などに置き換えるのが定番です。

  • このページで分かること
  • AVERAGEIFS関数でできることと基本の使いどころ
  • 構文と引数の意味
  • AVERAGEIFS関数の使用例

構文と引数

  • 365
  • 2019

=AVERAGEIFS(平均範囲,条件範囲1,条件1,[条件範囲2,条件2], ...)

引数 必要性 内容
平均範囲 必須 平均する1つor複数のセル(数値、数値を含む名前、配列、セル参照) を指定します。
条件範囲1,条件範囲2,... 必須(2以降は任意) 条件範囲1は必須ですが、条件範囲2以降は省略可能です。対応する条件による評価の対象となる1~127個の範囲を指定します。
検索条件1,検索条件2,... 必須(2以降は任意) 検索条件1は必須ですが、検索条件2以降は省略可能です。平均の対象となるセルを定義する1~127個の条件を数値、式、セル参照、文字列で指定します。例えば、検索条件は32、"32"、">32"、"Windows"、B4の様になります。

AVERAGEIFS関数の解説

  • ・平均範囲が空orテキスト値の場合は、エラー値#DIV/0!が返されます。
  • ・条件範囲内の空白のセルは0と見なされます。
  • ・条件範囲内のTRUEを含むセルは1と見なされます。範囲内のFALSEを含むセルは0(ゼロ)と見なされます。
  • ・セルに対して指定されたすべての検索条件がTRUEの場合にのみ、平均値の計算に平均範囲の各セルが使われます。
  • ・AVERAGEIF関数の引数とは異なり、AVERAGEIFS関数では、各条件範囲に含まれるセルの個数と形状は、平均範囲と必ず一致している必要があります。
  • ・平均範囲のセルを数値に変換できなかった場合は、エラー値#DIV/0!が返されます。
  • ・すべての検索条件を満たすセルがない場合は、エラー値#DIV/0!が返されます。
  • ・検索条件には、半角の疑問符(?)or半角のアスタリスク(*)をワイルドカード文字として使用できます。ワイルドカード文字の疑問符(?)は任意の1文字を表し、アスタリスク(*)は1文字以上の任意の文字列を表します。
  • ・ワイルドカード文字ではなく、通常の文字として疑問符(?)やアスタリスク(*)を検索する場合は、その文字の前に半角のチルダ(~)を付けます(~?、~*と指定します)。
  • ・AVERAGEIFS関数では、データの中心傾向 (統計的分布における数値グループの中心位置) が評価されます。 中心傾向を表す最も一般的な指標として、次の3つが挙げられます。
  • ・平均:演算によって求める平均値です。グループの各数値を加算してそれらの数値の個数で割ることにより計算します。例えば、2、3、3、5、7、10の平均は30を6で割った数、つまり5です。
  • ・メジアン:数値のグループの中で中央に当たる数値です。メジアンより大きい数値と小さい数値の個数が半々になります。例えば、2、3、3、5、7、10のメジアンは4です。
  • ・モード:数値のグループの中で、最も頻繁に出現する数値です。例えば、2、3、3、5、7、10のモードは3です。
  • ・数値のグループが対称分布の場合には、これら3つの中心傾向の測度の値は同じになります。 数値のグループが非対称分布の場合には、値が異なることがあります。
出典:Microsoft - Office サポート

AVERAGEIFS関数の使用例

生徒 1問目 2問目 最終
クイズ クイズ 試験
成績 成績 成績
加藤 75 85 87
中田 94 80 88
大林 86 93 保留
森元 保留 75 75

全生徒を対象に、1問目のクイズの成績のうち70~90点の範囲に含まれる成績の平均を求めます(「保留」は計算から除外され、75と86の平均になる)。

=AVERAGEIFS(B4:B7, B4:B7, ">70", B4:B7, "<90")

80.5

全生徒を対象に、2問目のクイズの成績のうち95点を上回る成績の平均を求めます(95点を上回る得点は存在しないのでエラー値#DIV/0!が返される)。

=AVERAGEIFS(C4:C7, C4:C7, ">95")

#DIV/0!

全生徒を対象に、最終試験の成績のうち80点を上回る成績の平均を求めます(「保留」は計算から除外される)。

=AVERAGEIFS(D4:D7, D4:D7, "<>保留", D4:D7, ">80")

87.5

#DIV/0!を表示させず、該当なしのときは空欄にする

条件に合うセルがないと#DIV/0!になります。IFERROR関数で包むと、該当なしの場合に空欄(または「該当なし」などの文字)を表示できます。

=IFERROR(AVERAGEIFS(C4:C7, C4:C7, ">95"), "")

関連する関数

  • AVERAGEA関数:平均値を返す関数(数値/文字列/論理値を含む)
  • AVERAGEIF関数:検索条件に一致する平均値(算術平均)を返す関数
  • IFERROR関数:エラーのときに指定した値を返す関数(#DIV/0!対策)
  • COUNTIFS関数:複数の検索条件に一致するセルの個数を返す関数

よくある質問

Q. AVERAGEIFS関数は何をするときに使いますか?

AVERAGEIFS関数は、複数の検索条件に一致する平均値(算術平均)を返す関数です。 AVERAGEIF関数は条件が1つで平均範囲は最後の引数、AVERAGEIFS関数は条件を最大127個まで重ねられ、平均範囲が先頭の引数になる点が違います。

Q. AVERAGEIFS関数がうまく動かないときは何を確認すればよいですか?

まず平均範囲と各条件範囲の行数・列数が一致しているかを確認してください。条件に合うセルがない場合や平均範囲が数値でない場合は#DIV/0!になります。

よくある失敗例・エラー対処

AVERAGEIFS関数で期待通りの結果にならないときは、次の点を確認してください。

  • 平均範囲、条件範囲1,条件範囲2,... の指定が関数の仕様どおりか確認する
  • 空白セルや文字列、エラー値の扱いを確認する
  • 条件に合うセルが0件だと#DIV/0!になるため、条件の書き方(">70" のように引用符で囲む)を確認し、必要ならIFERROR関数で包む

まとめ

このページでは、AVERAGEIFS関数について以下を確認しました。

  • ・AVERAGEIFS関数でできることと基本の使いどころ
  • ・構文と引数の意味
  • ・AVERAGEIFS関数の使用例