Excelで「条件に合うデータの平均値を求めたい」ときに役立つのが DAVERAGE関数 です。
平均を出すだけならAVERAGE関数で十分ですが、DAVERAGEを使えば「特定の条件を満たすデータだけ」の平均を効率的に計算できます。
データベース管理や集計作業で威力を発揮する便利な関数です。
DAVERAGE関数とは
DAVERAGE関数は、指定したデータベースの中から、条件に合致するレコードの数値を抽出し、その平均値を返す関数です。
複数条件を設定できるので、フィルターをかけてから平均を取る操作を自動化できるのが特徴です。
書式
DAVERAGE関数の書式は次のとおりです。
=DAVERAGE(データベース, フィールド, 条件)
引数の説明
- データベース:検索対象となる表全体(見出し行を含む範囲)
- フィールド:平均を求めたい列(列見出し名や列番号で指定可能)
- 条件:抽出条件を記載した範囲(見出し名+条件を入力したセル範囲)
DAVERAGE関数の使い方
DAVERAGE関数を使うと、条件に一致するデータだけを対象にして平均値を求めることができます。
ここでは、「営業」部署に所属している人の給与平均を求める例を見ていきます。

=DAVERAGE(C2:F7,F2,H2:H3)
この式は、指定した条件に一致するデータの平均を計算しています。
範囲C2:F7から条件範囲H2:H3の「営業」に一致するデータを抽出し、「給与」列の値をもとに平均を計算します。今回の条件に当てはまるのは
- 佐藤:250,000
- 田中:280,000
この2人の平均を求めるため、(250,000 + 280,000) ÷ 2 = 265,000となり、
結果は 265,000 になります。

DAVERAGE関数は、このように条件付きで平均を求めたいときに便利な関数です。
DAVERAGE関数で条件を複数指定する場合
条件を複数設定するには、条件範囲に見出しを含め、AND条件(すべての条件を満たす)または OR条件(どれかを満たす)として入力します。
条件を横に並べると「AND条件」になる
この条件では「部署が営業 かつ 30歳以上」の行だけが対象になります。

=DAVERAGE(C2:F7,F2,H2:I3)
→ 「部署が営業 かつ 30歳以上」の条件に一致するのは「田中」さんのみ、結果は 280000。
条件を縦に並べると「OR条件」になる
この条件では「営業」または「30歳以上」に該当する行がカウントされます。

=DAVERAGE(C2:F7,F2,H2:I4)
→ 「部署が営業 または 30歳以上」の条件に一致するのは「伊藤」さん以外の全員で、結果は 287500。
注意点
- 条件範囲には必ず見出しを含める
- 条件は複数列にまたがって指定可能(AND条件やOR条件も設定可)
- フィールドは列名を使うと分かりやすい
- 条件に合うデータがなければエラー(#DIV/0!)が返る
- 数値以外のフィールドを指定すると計算できない
関連関数
| 関数名 | 説明 |
|---|---|
| DCOUNT関数 | 条件に一致するデータの件数(数値)を数える |
| DCOUNTA関数 | 条件に一致するデータの件数(空白以外)を数える |
| DSUM関数 | 条件に一致するデータの合計を求める |
| DMAX関数 | 条件に一致するデータの最大値を求める |
| DMIN関数 | 条件に一致するデータの最小値を求める |
まとめ
DAVERAGE関数は、データベース形式の表から「条件を満たすレコードの平均」を計算する関数です。
単純なAVERAGEではできない「条件付き平均」を簡単に計算できるため、営業管理、給与管理、アンケート分析など実務の場面で活用できます。



Excel人気記事