概要
AVERAGEIFは「指定した範囲の中で、条件を満たすセルの平均」を求める関数です。SUMIFが「条件を満たす合計」なのに対し、AVERAGEIFは「条件を満たす平均値」を返します。例えば「地域が東京の売上平均」や「100以上の点数の平均」など、条件付きの平均を簡単に計算できます。
基本の使い方
- 書式:
- 範囲: 条件を判定するセル範囲
- 条件: 判定内容(例: “東京”, “>=100″)
- 平均範囲: 平均を取りたいセル範囲(省略時は範囲そのものを平均)
=AVERAGEIF(範囲, 条件, [平均範囲])
具体例
例1: 数値条件で平均
A列に点数があるとき、100以上の平均を求める:
=AVERAGEIF(A2:A100, ">=100")
- 説明: A列の値が100以上のセルだけ平均します。
例2: 判定列と平均列を分ける
A列=地域、B列=売上。地域が「東京」の売上平均:
=AVERAGEIF(A2:A200, "東京", B2:B200)
- 説明: A列で条件判定し、B列の値を平均。
例3: 日付条件で平均
D列=日付、E列=金額。H1の日付以降の金額平均:
=AVERAGEIF(D2:D200, ">=" & H1, E2:E200)
- 説明: H1に指定した日付以降の行の金額平均。
例4: 部分一致(ワイルドカード)
商品名に「限定」を含む商品の売上平均:
=AVERAGEIF(C2:C200, "*限定*", D2:D200)
- 説明: ワイルドカード “*” を使って部分一致。
作業効率のコツ
- 条件をセル参照にする:
=AVERAGEIF(A2:A200, H1, B2:B200)
→ H1に条件を入力すれば式を直さず変更可能。
- 絶対参照で範囲固定:
=AVERAGEIF($A$2:$A$200, H1, $B$2:$B$200)
→ コピーしても範囲がズレません。
- テーブル参照で見やすく:
=AVERAGEIF(売上[地域], "東京", 売上[金額])
よくあるつまずきと対策
- 条件範囲と平均範囲のサイズ不一致:
→ 同じ行数・列数で揃える必要があります。 - 数値に見える文字列が混在:
→ VALUE関数で数値化、入力規則で統一。 - 条件に空白を使う:
=AVERAGEIF(B2:B200, "")
→ 空白セルの平均を求められます。
- 複数条件を使いたい:
→ AVERAGEIFSを使うと複数条件に対応可能。
応用テンプレート
- 複数条件の平均(AVERAGEIFS)
=AVERAGEIFS(B2:B200, A2:A200, "東京", C2:C200, "12月")
→ 地域=東京かつ月=12月の売上平均。
- しきい値をセルで指定
=AVERAGEIF(C2:C200, ">=" & H1)
→ H1の値以上の平均。
- 非空セルだけ平均
=AVERAGEIF(B2:B200, "<>")
練習問題
- 問題1: A列=点数。100以上の平均をA201に表示してください。
- 解答例:
=AVERAGEIF(A2:A200, ">=100")
- 問題2: A列=地域、B列=売上。地域が「東京」の売上平均をB201に表示してください。
- 解答例:
=AVERAGEIF(A2:A200, "東京", B2:B200)
- 問題3: D列=日付、E列=金額。H1の日付以降の金額平均をE201に表示してください。
- 解答例:
=AVERAGEIF(D2:D200, ">=" & H1, E2:E200)
- 問題4: 商品名に「限定」を含む商品の売上平均をF201に表示してください。
- 解答例:
=AVERAGEIF(C2:C200, "*限定*", D2:D200)
まとめ
- 1条件の平均:
=AVERAGEIF(範囲, 条件, 平均範囲) - 複数条件:
AVERAGEIFSを使う - セル参照やテーブル参照: 可読性・保守性が向上
- ワイルドカード: 部分一致に便利
