概要
AVERAGEは「指定した範囲や数値の平均(算術平均)」を求めるExcelの基本関数です。空白は無視、0は平均に含まれる、文字列は無視、エラーは混ざると計算不能になるなどのルールを押さえると失敗が減ります。条件付き平均や見えている行だけの平均は別関数(AVERAGEIF/AVERAGEIFS、SUBTOTAL)を使います。
基本の使い方
- 書式:
=AVERAGE(数値1, [数値2], …)
セル範囲、離れたセル、直接数値を混ぜて指定できます。
- 単一範囲の平均:
=AVERAGE(A1:A10)
A1〜A10の数値の平均を計算します(空白や文字列は除外、0は含まれる)。
- 複数範囲・離れたセルの平均:
=AVERAGE(A1:A10, C1:C5, F3)
連続・非連続をまとめて平均できます。
- 手早く挿入(オート計算): Alt+= でSUMが挿入されるので、関数名をAVERAGEに打ち替えると素早く設定できます。
具体例
例1: テスト点数の平均
A2:A11に点数が入っているとします。
- 目的: A2〜A11の平均をA12に表示
=AVERAGE(A2:A11)
- ポイント:
- 空欄: 空白セルは平均の分母に含まれません。
- 0: 0は「成績0点」として平均に含まれる点に注意。
例2: 行方向の平均(横平均)
B2:E2に「1月〜4月の売上」が並ぶとします。
- 目的: 行の平均をF2に表示
=AVERAGE(B2:E2)
- ポイント:
- コピー: F2の式を下へコピーして各行の平均を出せます。
例3: 離れたセルだけの平均
B2, B5, B9の平均。
- 目的: 離れたセルを指定
=AVERAGE(B2, B5, B9)
- ポイント:
- カンマ: 個別セルはカンマ区切りで並べます。
例4: テーブル(構造化参照)の平均
テーブル「売上」に列「金額」がある場合。
- 目的: テーブル列の平均
=AVERAGE(売上[金額])
- ポイント:
- 自動拡張: 行追加に追従するので管理が楽です。
よくあるつまずき
- 文字列が混在して平均が狂う/除外される:
「123」でも文字列扱いだと分母から外れます。- 対策:
- データの統一: 全角/半角、カンマ、先頭のアポストロフィを除去。
- 数値化: 必要なら VALUEで数値化し別列を平均。
- 対策:
=AVERAGE(VALUE(A2), VALUE(A3))
- エラー値が混ざって計算できない:
#DIV/0! などが含まれるとAVERAGEはエラーになります。- 対策: エラーをIFERRORで0や空白に置き換えてから平均。
=AVERAGE(IFERROR(A2:A100, ""))
入力後、配列動作が不要な環境では範囲の前処理を列で行うのが確実。
- フィルタ後、非表示も平均に含まれる:
AVERAGEは非表示行も計算します。- 対策: 表示中だけ平均したいならSUBTOTAL(平均は101)。
=SUBTOTAL(101, A2:A100)
- 0を除外したい/条件付き平均が必要:
AVERAGEは条件を持ちません。- 対策: AVERAGEIF/AVERAGEIFSを使う。
=AVERAGEIF(A2:A100, ">0") // 0より大きいAの平均
=AVERAGEIFS(B2:B100, A2:A100, "東京") // 地域が東京のB平均
- 文字列も含めて平均したい:
数値に変換せず文字列の「数値表現」も数えるならAVERAGEA。
=AVERAGEA(A2:A100)
ただしTRUE=1、FALSE=0、文字列は0として扱われるので注意。
応用テンプレート
- 重み付き平均(加重平均):
値がC2:C100、重みがD2:D100
=SUMPRODUCT(C2:C100, D2:D100) / SUM(D2:D100)
重みの合計が0でないことを確認してください。
- 月別シートをまたぐ平均:
=AVERAGE(Jan!B2:B100, Feb!B2:B100, Mar!B2:B100)
- 期間の欠損を無視(空白のみ無視):
空白を除外した平均(標準のAVERAGEでOK)
=AVERAGE(B2:B100)
- 閾値以上の平均(条件付き):
100以上の値だけ平均
=AVERAGEIF(B2:B100, ">=100")
- テーブルで「月=12月」の金額平均:
テーブル名: 売上、列: 月, 金額
=AVERAGEIFS(売上[金額], 売上[月], "12月")
練習問題
- 問題1: A2:A12にテスト点が入っています。平均をA13に表示してください。
- 解答例:
=AVERAGE(A2:A12)
- 問題2: B2:E10に各月の売上があり、各行の平均をF列に表示してください(F2に式を入れてF10までコピー)。
- 解答例:
=AVERAGE(B2:E2)
- 問題3: フィルタで表示中の行だけ平均したいとき、A2:A200の平均をG2に表示してください。
- 解答例:
=SUBTOTAL(101, A2:A200)
- 問題4: C列に値、D列に重みがあり、重み付き平均をH2に表示してください。
- 解答例:
=SUMPRODUCT(C2:C100, D2:D100) / SUM(D2:D100)
