「月ごとの売上平均を出したい」「テストの平均点をパッと計算したい」……Excelでこんな場面、よくありますよね。
数値の平均をサクッと出すなら、AVERAGE関数が定番です。範囲を指定するだけで、合計や個数を自分で計算しなくても平均値を自動で返してくれます。
この記事では、AVERAGE関数の基本的な書き方から実務活用パターンまで、まとめて解説していきます。よくあるエラーの対処法やAVERAGEIFとの使い分けも紹介します。
AVERAGE関数とは?
AVERAGE関数(読み方: アベレージ関数)は、指定した数値の算術平均を求める関数です。「Average」は英語で「平均」を意味します。
Excelの中でもかなり使用頻度が高い関数です。売上データの平均やテストの平均点、月次の経費平均など、ビジネスでも日常でも幅広く活躍します。
AVERAGE関数にできることをまとめると、次のとおりです。
- 指定したセル範囲の数値の平均を求める
- 複数の離れたセル範囲をまとめて平均にする
- 数値を直接引数に渡して平均を計算する
- 空白セルや文字列は自動的にスキップする
「この範囲の数値の平均を出してね」とExcelにお願いする関数、というイメージです。
対応バージョン
AVERAGE関数はExcel 2007以降のすべてのバージョンで使えます。Microsoft 365やGoogleスプレッドシートにも対応しています。
AVERAGE関数の書き方(構文と引数)
基本構文
=AVERAGE(数値1, [数値2], ...)
カッコの中に、平均を求めたい数値やセル範囲を指定します。
引数の説明
| 引数 | 必須/任意 | 説明 |
|---|---|---|
| 数値1 | 必須 | 平均を求めたい最初の数値、セル参照、またはセル範囲 |
| 数値2, … | 任意 | 追加で平均に含めたい数値やセル範囲(最大255個まで) |
引数が2つ以上ある場合は、カンマで区切って入力します。
引数に指定できるものは3種類あります。
- 数値を直接入力:
=AVERAGE(80, 70, 90)→ 結果は80 - セル参照:
=AVERAGE(A1, B1, C1)→ 各セルの値の平均 - セル範囲:
=AVERAGE(A1:A10)→ A1からA10の値の平均
AVERAGE関数の基本的な使い方
ここでは、実際にAVERAGE関数を使ってみましょう。
セル範囲の平均を求める
たとえば、5人のテスト結果がB2からB6に入っているとします。
=AVERAGE(B2:B6)
これだけで5人の平均点が表示されます。とてもシンプルですよね。
数値を直接指定して平均を求める
セル参照を使わず、数値を直接入力することもできます。
=AVERAGE(85, 72, 90, 68, 95)
5つの数値の平均である82が返されます。ちょっとした確認をしたいときに便利です。
複数のセル範囲を指定する
離れた範囲をまとめて平均を求めることもできます。たとえば、1月の売上(B2:B31)と3月の売上(D2:D31)をまとめたい場合です。
=AVERAGE(B2:B31, D2:D31)
カンマで区切るだけで、離れた範囲も一度に計算してくれます。
オートSUM(オートアベレージ)で入力する
AVERAGE関数は手入力のほかに、ショートカットでも入力できます。
| 操作 | 手順 |
|---|---|
| リボンから | 「ホーム」タブ →「オートSUM」横の▼ →「平均」を選択 |
| ショートカット | Alt + = を押した後、ドロップダウンから「平均」を選択 |
オートSUMの範囲認識
オートSUMは直上のセルから連続した数値セルを自動認識します。途中に空白行があると、そこで範囲が途切れます。意図した範囲になっているか確認してから確定しましょう。
AVERAGE関数の実務活用パターン
基本がわかったところで、実務でよく出てくるパターンを見ていきましょう。
月別の売上平均を集計する
各月の売上が行ごとに入っている表で、月ごとの平均売上を出す場面です。たとえば、4月の日別売上がB2:B31に入っているとします。
=AVERAGE(B2:B31)
これで4月の1日あたり平均売上が出せます。月ごとにこの式をコピーすれば、月別推移も一覧にできます。
0を除外して平均を求める
AVERAGE関数では、セルに「0」が入っていると計算に含まれます。「未入力のセルに0が入っている」ケースでは、平均が下がってしまいます。
0を除外して平均を出したいときは、[[2022-03-26-excel-function-howto-use-averageif|AVERAGEIF関数]]を使いましょう。
=AVERAGEIF(B2:B20, "<>0")
「B2:B20のうち、0以外のセルだけで平均を求める」という意味です。
条件に合うデータだけ平均を求める
「A商品の売上だけの平均が知りたい」のように、条件付きで平均を出したい場面もありますよね。そんなときは[[2022-03-26-excel-function-howto-use-averageif|AVERAGEIF関数]]の出番です。
=AVERAGEIF(A2:A20, "A商品", B2:B20)
さらに複数の条件を指定したい場合は、[[2022-03-26-excel-function-howto-use-averageifs|AVERAGEIFS関数]]を使います。
=AVERAGEIFS(C2:C20, A2:A20, "A商品", B2:B20, "東京")
「A商品かつ東京のデータだけで平均を求める」という式です。
ROUND関数と組み合わせて小数点を丸める
AVERAGE関数の結果は小数点以下が長くなることがあります。見た目をそろえるなら、[[2022-04-15-excel-function-howto-use-round|ROUND関数]]で桁数を指定しましょう。
=ROUND(AVERAGE(B2:B10), 1)
この式は、平均値を小数第1位に四捨五入します。報告書や集計表では小数桁を統一しておくと見やすくなります。
IFERROR関数でエラーを非表示にする
データがまだ入っていない段階でAVERAGE関数を入れておくと、#DIV/0!エラーが表示されてしまいます。[[2022-03-28-excel-function-howto-use-iferror|IFERROR関数]]で対処しましょう。
=IFERROR(AVERAGE(B2:B10), "-")
データがないうちは「-」を表示し、データが入ったら自動で平均値に切り替わります。テンプレートを作るときに便利です。
SUM関数とCOUNT関数で手動計算する
ちょっとむずかしく見えますが、やっていることはシンプルです。AVERAGE関数の結果は、[[2022-02-06-excel-function-howto-use-sum|SUM関数]]と[[2022-04-24-excel-function-howto-use-count|COUNT関数]]で同じ結果が得られます。
=SUM(B2:B10) / COUNT(B2:B10)
「合計 / 個数 = 平均」という算数の考え方そのままです。AVERAGE関数が使えない特殊な集計が必要な場面で、この考え方を知っておくと役立ちます。
COUNTA関数との違い
[[2022-04-24-excel-function-howto-use-count|COUNT関数]]は数値セルだけを数えます。一方、[[2022-04-25-excel-function-howto-use-counta|COUNTA関数]]は文字列も含めて空白でないセルを数えます。AVERAGE関数の動きを再現するには、COUNT関数を使うのが正解です。
AVERAGE関数の空白・0・文字列の扱い
AVERAGE関数は、データの種類によってカウントするかしないかが変わります。この違いを知っておくと、意図しない結果を防げます。
セル範囲で指定した場合
| データの種類 | 扱い |
|---|---|
| 数値 | 計算に含まれる |
| 空白セル | 無視される(分母にも含まない) |
| 文字列(”未入力”など) | 無視される |
| 論理値(TRUE/FALSE) | 無視される |
| 0 | 計算に含まれる(分母にカウント) |
| エラー値(#N/Aなど) | 結果がエラーになる |
直接引数に入力した場合
| データの種類 | 扱い |
|---|---|
| 数値 | 計算に含まれる |
| 文字列 | #VALUE! エラー |
| 論理値(TRUE/FALSE) | TRUE=1、FALSE=0として計算 |
| 0 | 計算に含まれる |
空白セルと0の違いがポイント
空白セルは「データがない」扱いで分母にも入りません。0は「0という数値がある」扱いで分母に入ります。この違いが平均値に大きく影響するので注意してください。
よくあるエラーと対処法
AVERAGE関数で「あれ?」と思ったら、以下のパターンを確認してみてください。
| 症状 | 原因 | 対処法 | ||
|---|---|---|---|---|
| #DIV/0! エラー | 範囲にデータが1つもない(すべて空白) | 参照範囲にデータが入っているか確認。IFERROR関数で囲んでエラーを非表示にする | ||
| #VALUE! エラー | 文字列を直接引数に入力した | 文字列は取り除くか、セル範囲で指定する。範囲指定なら文字列は自動スキップされる | ||
| 平均値が予想より低い | 0が計算に含まれている | 0を除外するなら =AVERAGEIF(範囲, "<>0") を使う | ||
| 平均値が変わらない | 文字列として格納された数値がある | セルを選択して「数値」形式に変換する。[[2022-07-23-excel-function-howto-use-value | VALUE関数]]で数値に変換する方法もある | |
| エラーを含む範囲で平均が出ない | 範囲内に#N/Aなどのエラーセルがある | [[2022-01-16-excel-function-howto-use-if | IF関数]]と[[2022-03-28-excel-function-howto-use-iferror | IFERROR関数]]の組み合わせか、AGGREGATE関数を使う |
| 日付セルが巨大な数値になる | 日付がシリアル値として計算された | 日付セルは範囲から除外するか、数値のみ含む範囲を指定する |
似た関数との違い・使い分け
AVERAGE関数に似た関数がいくつかあります。目的に合わせて使い分けましょう。
| 関数名 | 用途 | 使う場面 | ||
|---|---|---|---|---|
| AVERAGE | 範囲全体の平均 | すべてのデータの平均を出す | ||
| [[2022-03-26-excel-function-howto-use-averageif | AVERAGEIF]] | 1条件で平均 | 「A商品だけ」のように条件が1つ | |
| [[2022-03-26-excel-function-howto-use-averageifs | AVERAGEIFS]] | 複数条件で平均 | 「A商品かつ東京」のように条件が2つ以上 | |
| [[2022-10-21-excel-function-howto-use-averagea | AVERAGEA]] | 文字列・論理値も含めた平均 | TRUE/FALSEを1/0として計算したい | |
| [[2022-05-21-excel-function-howto-use-median | MEDIAN]] | 中央値 | 外れ値に影響されない代表値が欲しい | |
| [[2022-02-06-excel-function-howto-use-sum | SUM]] | 合計 | 平均ではなく合計が必要 | |
| [[2022-04-24-excel-function-howto-use-count | COUNT]] | 個数 | データの件数を知りたい | |
| [[2022-03-17-excel-function-howto-use-max | MAX]] / [[2022-03-18-excel-function-howto-use-min | MIN]] | 最大値 / 最小値 | 範囲の最大・最小を知りたい |
AVERAGEIF関数との違い
AVERAGE関数は範囲内のすべての数値で平均を出します。条件を付けたいなら[[2022-03-26-excel-function-howto-use-averageif|AVERAGEIF関数]]を使いましょう。
=AVERAGEIF(A2:A20, "東京", B2:B20)
「A列が東京の行だけ、B列の平均を出す」という式です。条件が1つならAVERAGEIF、2つ以上なら[[2022-03-26-excel-function-howto-use-averageifs|AVERAGEIFS関数]]にステップアップします。
MEDIAN関数との違い
AVERAGE関数は算術平均(全部足して個数で割る)を求めます。一方、[[2022-05-21-excel-function-howto-use-median|MEDIAN関数]]はデータを並べたときの中央の値を返します。
外れ値がある場合はMEDIAN関数のほうが実態に近い数値になることがあります。たとえば「10, 20, 30, 40, 1000」の平均は220ですが、中央値は30です。
SUM/COUNT関数との関係
AVERAGE関数は、内部的には「合計 / 個数」を計算しています。つまり、[[2022-02-06-excel-function-howto-use-sum|SUM関数]]と[[2022-04-24-excel-function-howto-use-count|COUNT関数]]で再現できます。
=SUM(B2:B10) / COUNT(B2:B10)
通常はAVERAGE関数で十分ですが、合計と個数を別々に表示したい場面では、SUM/COUNTを個別に使うと便利です。
まとめ
この記事では、ExcelのAVERAGE関数について基本から実務活用まで解説しました。
ポイントをおさらいしておきましょう。
- AVERAGE関数は、指定した範囲の算術平均を求める関数
- 空白セルや文字列は自動的にスキップされる
- 0は計算に含まれる(除外するならAVERAGEIF関数を使う)
- #DIV/0!エラーはデータがないとき、#VALUE!エラーは文字列の直接入力で発生
- 条件付き平均にはAVERAGEIF、複数条件にはAVERAGEIFSを使う
- 外れ値に強い代表値が欲しいならMEDIAN関数も選択肢
AVERAGE関数自体はとてもシンプルです。空白と0の扱いの違いを知っておけば、思わぬミスも防げます。ぜひ業務で活用してみてください。
この記事で紹介した関数・関連記事
- [[2022-03-26-excel-function-howto-use-averageif|AVERAGEIF関数の使い方]]
- [[2022-03-26-excel-function-howto-use-averageifs|AVERAGEIFS関数の使い方]]
- [[2022-10-21-excel-function-howto-use-averagea|AVERAGEA関数の使い方]]
- [[2022-02-06-excel-function-howto-use-sum|SUM関数の使い方]]
- [[2022-04-24-excel-function-howto-use-count|COUNT関数の使い方]]
- [[2022-04-25-excel-function-howto-use-counta|COUNTA関数の使い方]]
- [[2022-05-21-excel-function-howto-use-median|MEDIAN関数の使い方]]
- [[2022-04-15-excel-function-howto-use-round|ROUND関数の使い方]]
- [[2022-02-21-excel-function-howto-use-sumif|SUMIF関数の使い方]]
- [[2022-03-28-excel-function-howto-use-iferror|IFERROR関数の使い方]]
- [[2022-01-16-excel-function-howto-use-if|IF関数の使い方]]
- [[2022-03-17-excel-function-howto-use-max|MAX関数の使い方]]
- [[2022-03-18-excel-function-howto-use-min|MIN関数の使い方]]
- [[2022-02-06-excel-function|Excel関数一覧]]
- [[2022-02-19-excel-function-list-by-function|Excel関数を機能別に検索]]
