ピアのパソコン学習ガイド
メニュー
Excel関数

AVERAGEIF関数の使い方|条件に合う行だけ平均する

ピアのパソコン学習ガイド 編集部2026年11月9日 更新

※写真はイメージです

書き方はこれだけ

=AVERAGEIF(条件を探す範囲, 条件, 平均する範囲)

AVERAGEIFは、条件に合う行の数字だけで平均を出す関数です。支店ごとの平均売上、男女別の平均点、0を除いた平均などに使います。書き方はSUMIFとまったく同じで、合計が平均に変わるだけです。条件が2つ以上なら AVERAGEIFS を使います。

東京の行(120・150・90)だけの平均 → 120 E2 fx =AVERAGEIF($A$2:$A$6,D2,$B$2:$B$6) A B C D E 1 2 3 4 5 6 支店 売上 支店 平均 東京 120 大阪 90 東京 150 大阪 70 東京 90 東京 120
支店の一覧をD列に作って、式を下にコピーすれば、支店ごとの平均の表になります。

この図の表をExcelファイルでダウンロード(問題と答えのシートつき)

よく使う例

やりたいこと式
支店ごとの平均売上=AVERAGEIF($A$2:$A$100,D2,$B$2:$B$100)
0を除いた平均(休んだ日を入れない)=AVERAGEIF(B2:B31,"<>0")
70点以上の人だけの平均=AVERAGEIF(B2:B40,">=70")
東京で、かつ11月の平均(条件2つ)=AVERAGEIFS(C:C,A:A,"東京",B:B,"11月")

2つ目と3つ目の例のように、条件を探す範囲と平均する範囲が同じなら、3つ目は省略できます。

AVERAGEIFSは、書く順番が違う

関数書く順番
AVERAGEIF条件を探す範囲 → 条件 → 平均する範囲(最後)
AVERAGEIFS平均する範囲(最初) → 条件を探す範囲1 → 条件1 → 範囲2 → 条件2 …

ここがいちばん間違えやすいところです。AVERAGEIFSは「平均する範囲」が先頭に来ます。SUMIFとSUMIFSも同じ並びなので、片方を覚えればもう片方も同じです。

うまくいかないとき

1#DIV/0! になる

条件に合う行が1つもないので、平均が出せません。

直し方条件のつづりを確かめます。合う行がないときは空欄にしたいなら =IFERROR(AVERAGEIF(…),"")。

2平均が思ったより低い

0が入っている行も平均に入っています(空欄は入りません)。

直し方0を除くなら、条件に "<>0" を使います。

3下にコピーしたら範囲がずれた

範囲に $ が付いていません。

直し方範囲を選んで F4 キーで固定します。

サンプルファイルで試す

黄色のセルにAVERAGEIFの式を入れて、「答え」のシートと比べてください。

averageif.xlsx をダウンロード(無料・登録なし)

よくある質問

AVERAGEIF関数とは?

条件に合う行の数字だけで平均を出す関数です。=AVERAGEIF(条件を探す範囲,条件,平均する範囲) と書きます。

0を除いて平均するには?

=AVERAGEIF(範囲,"<>0") で、0の行を除いた平均が出ます。

AVERAGEIFとAVERAGEIFSの違いは?

AVERAGEIFSは条件を2つ以上指定でき、書く順番は平均する範囲が最初になります。

AVERAGEIFが#DIV/0!になります

条件に合う行が1つもありません。条件のつづりや範囲を確かめてください。

一緒に覚えたい関数・操作

このページについて

操作の説明は Microsoft 365 の日本語版Excel(Windows)に合わせています。図はこのサイトで作ったもので、表の会社名・商品名・人名は架空です。運営者情報