AVERAGEIFS関数の使い方|複数条件で平均を出す・以上未満・日付の期間

AVERAGEIFS関数の使い方|複数条件で平均を出す・以上未満・日付の期間

エクセルで、複数の条件にすべて合うセルの平均を出すには AVERAGEIFS関数を使います。たとえば「A組」で「70点以上」の人の平均は、=AVERAGEIFS(C3:C10,B3:B10,"A",C3:C10,">=70") で 80 と分かります。

最初に平均する範囲を書き、そのあとに「条件範囲」と「条件」の組を並べます。この記事では、AVERAGEIFS関数の基本、同じ列で「以上〜未満」を指定する方法、日付の期間で平均する方法、セル参照、「〜を含む」「〜以外」の条件、該当がないときの対処までを、1つの表で説明します。下の練習ツールで、点数や条件を書き換えて結果の変わり方を試せます。

目次

AVERAGEIFS関数の書き方

AVERAGEIFS関数の構文
数式=AVERAGEIFS(平均対象範囲,条件範囲1,条件1,[条件範囲2,条件2],…)
ひとことで複数の条件に合う平均を求める
平均対象範囲
平均する範囲です
条件範囲1
1つ目の条件の範囲です
条件1
1つ目の条件です
[条件範囲2
2つ目の条件の範囲です
条件2]
2つ目の条件です
…
2つ目の条件です
引数入れるもの例
平均対象範囲平均する数値の範囲C3:C10(点数)
条件範囲1, 条件11つ目の条件B3:B10, “A”
条件範囲2, 条件2…2つ目以降の条件C3:C10, “>=70”
注意注意:AVERAGEIF関数は「範囲, 条件, 平均対象範囲」の順ですが、AVERAGEIFS関数は平均対象範囲が先頭です。順番を間違えると結果がずれます。

2つの条件に合う平均を出す

手順:G3 に AVERAGEIFS の式を入れて Enter

A 組で、しかも 70 点以上の人だけの平均点を求めます。 G3 に次の式を入力して、Enter キーを押します❶。

G3 に入れる式
=AVERAGEIFS(C3:C10,B3:B10,"A",C3:C10,">=70")
C3:C10 平均対象範囲(点数)B3:B10 条件範囲1(組)"A" 条件1(A 組)C3:C10 条件範囲2(点数)">=70" 条件2(70 以上)
ひとことで組が「A」で、しかも点数が70 以上の人だけで、点数の平均を出す
式を分けて読むと(色は画像の枠と同じ)
平均対象範囲C3:C10
どの列を平均する?
→ 点数の列
条件範囲1B3:B10
どこで条件1を調べる?
→ 組の列
条件1"A"
何と同じ行?
→ 「A」組
条件範囲2C3:C10
どこで条件2を調べる?
→ 点数の列(平均する列と同じでもよい)
条件2">=70"
いくつ以上?
→ 70 以上
自分の表で使うときは
紫に「平均したい列」を最初に入れ、そのあとに「調べる列」と「条件」のペアを並べます。例:部署(A 列)が「営業」で、年(B 列)が 2026 の売上(D 列)の平均=AVERAGEIFS(D2:D50,A2:A50,"営業",B2:B50,2026)
  • 条件に合う数値が 1 つも無いと #DIV/0! になります。
エクセルのAVERAGEIFS関数でA組かつ70点以上の平均を求める式と、平均対象範囲・条件範囲・条件を色分けした画面
エクセルのAVERAGEIFS関数でA組かつ70点以上の平均を求める式と、平均対象範囲・条件範囲・条件を色分けした画面

確認:80 は A 組で 70 点以上の 3 人の平均

エクセルのAVERAGEIFS関数で、A組で70点以上の山田・鈴木・渡辺の点数を平均して80になったことを色で示した画面
エクセルのAVERAGEIFS関数で、A組で70点以上の山田・鈴木・渡辺の点数を平均して80になったことを色で示した画面

答えは 80 になりました❷。式は、次の順に計算しています。

  1. 組が「A」で、しかも点数が70 以上の行を探す
    ⇒ 山田(80)・鈴木(90)・渡辺(70)
  2. その点数を平均する
    ⇒ (80+90+70)÷3=80
ヒント:対象の人数を確かめる
=COUNTIFS(B3:B10,"A",C3:C10,">=70") で 3 人と確かめられます。田中さんの「欠席」は文字なので数えません。

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

AVERAGEIFS関数の使い方|やりたいこと別の式

やりたいこと式(例)結果
2つの条件(AND)=AVERAGEIFS(C3:C10,B3:B10,”A”,C3:C10,”>=70″)80
60以上80未満=ROUND(AVERAGEIFS(C3:C10,C3:C10,”>=60″,C3:C10,”<80″),1)66.7
日付の期間=AVERAGEIFS(C3:C10,D3:D10,”>=”&DATE(2026,10,1),D3:D10,”<=”&DATE(2026,10,15))75
セルの値を条件に=AVERAGEIFS(C3:C10,B3:B10,G12,C3:C10,”>=”&G13)75
「〜以外」と組み合わせ=AVERAGEIFS(C3:C10,B3:B10,”<>A”,C3:C10,”>=70″)75
該当なしのとき=IFERROR(AVERAGEIFS(…),”該当なし”)該当なし
エクセルのAVERAGEIFS関数で複数の条件に合う点数の平均を求めた表
エクセルのAVERAGEIFS関数で複数の条件に合う点数の平均を求めた表

同じ列で「〜以上〜未満」の平均を出す

ROUND関数の式
数式=ROUND(AVERAGEIFS(C3:C10,C3:C10,">=60",C3:C10,"<80"),1)
ひとことで四捨五入する
AVERAGEIFS(C3:C10,C3:C10,">=60",C3:C10,"<80")
四捨五入する数値です
1
桁数です

60・70・70 の平均は約66.67 で、小数1桁にして 66.7 です。80点ちょうどは「80未満」に入りません。

日付の期間で平均する

AVERAGEIFS関数の式
数式=AVERAGEIFS(C3:C10,D3:D10,">="&DATE(2026,10,1),D3:D10,"<="&DATE(2026,10,15))
ひとことで複数の条件に合う平均を求める
C3:C10
平均する範囲です
D3:D10
1つ目の条件の範囲です
">="&DATE(2026,10,1)
1つ目の条件です
D3:D10
2つ目の条件の範囲です
"<="&DATE(2026,10,15)
2つ目の条件です

10/1〜10/15 に受けたのは山田(80)・佐藤(60)・鈴木(90)・高橋(70)・田中(欠席)です。欠席を除く4人の平均で、結果は 75 です(DATE関数の使い方)。

セルの値を条件にする

AVERAGEIFS関数の式
数式=AVERAGEIFS(C3:C10,B3:B10,G12,C3:C10,">="&G13)
ひとことで複数の条件に合う平均を求める
C3:C10
平均する範囲です
B3:B10
1つ目の条件の範囲です
G12
1つ目の条件です
C3:C10
2つ目の条件の範囲です
">="&G13
2つ目の条件です

G12 が「B」、G13 が 70 なので、B組で70点以上の高橋(70)・中村(80)の平均で 75 です。

「〜を含む」「〜以外」の条件

条件式(例)結果
B組で「藤」を含む=AVERAGEIFS(C3:C10,B3:B10,”B”,A3:A10,”*藤*”)60
A組以外で70点以上=AVERAGEIFS(C3:C10,B3:B10,”<>A”,C3:C10,”>=70″)75

「*藤*」は佐藤(60)と伊藤(空欄)に当てはまり、空欄は除かれるので 60 です。

条件に合うものがないときの表示を決める

IFERROR関数の構文
数式=IFERROR(AVERAGEIFS(C3:C10,B3:B10,"A",C3:C10,">=95"),"該当なし")
ひとことでエラーを別の値に置き換える
AVERAGEIFS(C3:C10,B3:B10,"A",C3:C10,">=95")
エラーかどうかを調べる式です
"該当なし"
エラーのときの値です

A組に95点以上はいないので、#DIV/0! の代わりに 該当なし と表示されます。

AVERAGEIFS関数がうまくいかないときの確認表

症状考えられる原因対処
「#DIV/0!」になる条件に合う数値がないCOUNTIFS関数で件数を確かめる。IFERROR関数で表示を決める。
「#VALUE!」になる範囲の行数がそろっていない平均対象範囲と条件範囲を同じ行数にする。
結果がずれるAVERAGEIF関数の順番で書いた平均対象範囲を先頭に書く。
OR条件で平均したいAVERAGEIFS関数は AND だけFILTER関数で取り出して AVERAGE関数で平均する。

AVERAGEIFS関数のよくある質問

条件が1つでも使える?

使えます。=AVERAGEIFS(C3:C10,B3:B10,"A") は AVERAGEIF関数と同じ 80 です。あとで条件を増やす予定なら、最初から AVERAGEIFS関数で書いておくと便利です。

合計や件数を複数条件で出すには?

合計は SUMIFS関数、件数は COUNTIFS関数です(COUNTIFS関数の使い方)。

あわせて読みたい:条件付き集計の関連記事

練習用ファイル:練習用Excelファイル(.xlsx・無料)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次