AVERAGEIFS関数 複数の条件に一致する数値の平均値を返す

関数名 AVERAGEIFS
分類 統計
説明 複数の条件に一致する数値の平均値を返す
バージョン -
カテゴリ Excel関数一覧

ここでの解説は、特に説明がない限り、Excelをインストールし、初期設定のまま使用した場合の動作を基に解説しています。

書式

AVERAGEIFS(平均範囲1, 範囲12, 検索条件13, [範囲2], [検索条件2]4, … ,[範囲127], [検索条件127])

1 - 平均範囲 ----- 平均を求める実際のセルを指定します。
2 - 範囲1 ----- 検索の対象となるセル範囲を指定します。
3 - 検索条件1 ----- 検索するための条件を数値、式、セル参照、または文字列で指定します。
4 - [範囲2], [検索条件2], … ,[範囲127], [検索条件127] ----- (省略可) 2つ目以降の検索の対象となるセル範囲と、2つめ以降の検索するための条件を指定します。


解説

例えば、セルに図の様な値が入力されているとします。
Excel関数
「=AVERAGEIFS(D2:D8,A2:A8,"新橋",C2:C8,">2")」を入力します。
Excel関数
セル範囲A2:E8の値が"新橋"で、かつセル範囲C2:C8の値が2より大きいセルに対するセル範囲D2:D8の平均値が求められます。
Excel関数
この例の場合は、セルD4とセルD5の平均値が求められます。
「不明」と表示されているセルは、値が数値ではないため、計算からは除外されます。

「=AVERAGEIFS(D2:D8,A2:A8,"=*(新築)",B2:B8,">=10")」を入力します。
Excel関数
セル範囲A2:A8の値が"(新設)"で終わり、かつセル範囲B2:B8の値が10以上のセルに対するセル範囲D2:D8の平均値が求められます。
Excel関数
この例の場合は、セルD1とセルD7の平均値が求められます。

3つめの引数に指定した「"=*(新築)"」にある「*」は1文字以上の任意の文字列を表しています。
これを「ワイルドカード」といいます。
ワイルドカードには、「?」と「*」が使用でき、「?」は任意の1文字を表します。
つまり、「"=*(新築)"」は、1文字以上の文字列の後に「(新築)」という文字列が入力されたセルと等しい、という条件になります。
これを、「"=?(新築)"」とした場合は、任意の1文字の後に「(新築)」という文字列が入力されたセルと等しい、という条件になります。
「"=(新築)"」とした場合は、「(新築)」という文字列が入力されたセルと等しい、という条件になります。
「?」や「*」を文字として検索条件に指定したい場合には、「~?」や「~*」と「~」半角のチルダを付けます。

「=AVERAGEIFS(D2:D8,B2:B8,"<=10",C2:C8,">5")」を入力します。
Excel関数
セル範囲B2:B8の値が10以下で、かつセル範囲C2:C8の値が5より大きいセルに対するセル範囲D2:D8の平均値が求められます。
Excel関数
この例の場合は、条件に一致するセルが存在しないため、「#DIV0!」が表示されます。


注意事項

・平均範囲が空またはテキスト値の場合は、エラー値 #DIV0! が返されます。
・平均範囲のセルを数値に変換できなかった場合は、エラー値 #DIV0! が返されます。
・すべての検索条件を満たすセルがない場合は、エラー値 #DIV0! が返されます。


関連する関数

AVERAGEAVERAGEAAVERAGEIF