AVERAGEIF関数で条件に合うデータを平均

解説記事内の画像はExcel 2016のものですが、操作方法は下記のバージョンで同じです。
  • Excel 2016, 2013, 2010
Excel 2016・2013・2010用 練習ファイル
(averageif.xlsx  10.2KB)

Excelには、条件に合ったデータだけを計算したいときに使う下記のような関数があり、条件が1つのときと、条件が複数のときとで使う関数が違います。

  条件が1つ 条件が複数
合計 SUMIF SUMIFS
平均 AVERAGEIF AVERAGEIFS
カウント COUNTIF COUNTIFS

その中で今回ご紹介するのが、AVERAGEIF関数
条件に合ったデータだけの平均を計算したいときで、その条件が1つのときに使う関数です。

表の「性別」欄 今回は、表の「性別」欄が、

F2番地 F2番地に入力されている条件と同じデータだったら、

表の「予約数」欄 その「予約数」の平均を出したいと思います。

AVERAGEIF関数の設定

[関数の挿入]ボタン それでは早速、AVERAGEIF関数を設定してみましょう。
答えを表示させたいセルを選択し、[関数の挿入]ボタンをクリックします。

[関数の挿入]ダイアログボックス 関数を指定するためのダイアログボックスが表示されるので、[関数の分類]で「すべて表示」を選択すると、すべての関数が[関数名]欄にABC順で表示されます。
今回はAVERAGEIF関数を使いたいので、一覧から「AVERAGEIF」をクリックで選択し、[OK]ボタンをクリックすると、

AVERAGEIF関数の引数 AVERAGEIF関数の引数を設定するダイアログボックスが表示されます。
AVERAGEIF関数で設定する引数は3つ。

[範囲] この範囲が
[条件] この条件に合っていたら
[平均対象範囲] この範囲の平均を計算してね

という設定になるので、これを今回やりたいことに照らし合わせると、

[範囲] 「性別」欄が
(B2からB12番地が)
[条件] F2番地の条件に合っていたら
[平均対象範囲] 「予約数」欄の平均を計算してね
(D2からD12番地の平均を計算してね)

となります。

引数[範囲] それでは[範囲]から設定していきましょう。
[範囲]欄に文字カーソルがあることを確認し、ここには、上の表のように「B2からB12番地が」という部分を設定したいので、

B2からB12番地を範囲選択 B2からB12番地を範囲選択すると、

引数[範囲]の設定完了 ダイアログボックスに、指定した範囲を設定できました。
続いて、[条件]欄に文字カーソルを移したいので、キーボードの[Tab]キーを押すか、

引数[条件] [条件]欄でクリックすると、[条件]欄に文字カーソルを移せます。
この欄には、条件が入力されているセルを指定します。
今回の場合、条件はF2番地に入力されているので、

引数[条件]の設定完了 F2番地をクリックで選択すると、[条件]欄にそのセルを指定できます。
指定が終わったら、最後の[平均対象範囲]欄に文字カーソルを移したいので、キーボードの[Tab]キーを押すか、

引数[平均対象範囲] [平均対象範囲]欄でクリックすると、[平均対象範囲]欄に文字カーソルを移せます。
ここには、条件に合っていた場合、実際に平均の計算に使うデータがある範囲を指定します。
今回は、それはD2からD12番地なので、

D2からD12番地を範囲選択 D2からD12番地を範囲選択すると、

引数[平均対象範囲]の設定完了 [平均対象範囲]欄に、範囲を指定できました。
最後にダイアログボックス右下の[OK]ボタンをクリックすると、

「予約数」の平均を表示させることができた 条件に合ったデータの、「予約数」の平均を表示させることができました!

スポンサーリンク

AVERAGEIF関数をもう少し練習してみよう!

「年齢が45歳の人の、予約数を合計」したい もし、「年齢が45歳の人の、予約数を合計」したいなら、

[範囲] 「年齢」欄が
(C2からC12番地が)
[条件] F6番地の条件に合っていたら
[平均対象範囲] 「予約数」欄の平均を計算してね
(D2からD12番地の平均を計算してね)

となるので、

G6番地を選択 答えを表示させたいG6番地に、

AVERAGEIF関数の設定 図のように指定したAVERAGEIF関数を設定すればいいことになります。

AVERAGEIF関数の設定完了 条件に合ったデータの、「予約数」の平均を表示させることができました!

AVERAGEIF関数の再計算 関数のいいところは、データが変わったときに、即座に再計算してくれるところ。
というわけで、性別が「男」ではなく、「女」の平均予約数を知りたくなったのなら、条件が入力されているF2番地を変更すれば、計算結果もちゃんと変わってくれました!
もし、条件を変更したのに、計算結果が変わらない方は、条件を入力するセルに「女」と入力したあと、セルの中で文字カーソルが点滅しなくなるまで[Enter]キーでセルを確定することをお忘れなく。

「以上」や「以下」という条件の場合には

F6番地 現在、F6番地に入力されている年齢の条件は「45」となっています。

比較演算子で条件の設定 もし、「40以上」としたい場合には、「以上」の部分を比較演算子で表現して、「>=40」とすればOK。
こういった比較演算子や数字は、半角で入力するのがお約束です。
その他、「以下」や「未満」などをどう表すかを詳しく知りたい方は、「Excelで「以上」「以下」「より大きい」「より小さい(未満)」を表す記号」をご覧ください。

今回は、条件を入力するセルを準備し、数式には「条件はこのセルに入力しています」という指定をしています。
ですが、条件を入力するセルを準備せず、数式に直接条件を入力してしまうこともできます。
数式内に直接条件を入力する方法については、「SUMIFやCOUNTIF関数で数式内に直接条件を指定する」のページをご覧ください。

AVERAGEIF関数の数式

数式バーで数式の確認 数式を設定したセルを選択した状態で数式バーを見ると、そのセルに設定した数式の中身を確認することができます。
試しに、最初にAVERAGEIF関数を設定したG2番地を選択した状態で数式バーを見ると、このセルに設定した数式の内容を確認できます。

AVERAGEIF関数の数式 この数式を読み解くと、「もし、B2からB12番地が、F2番地の条件に合っていたら、D2からD12番地の平均を計算してね」ということになります。

スポンサーリンク