AVERAGEIF関数をマスターしよう!スプレッドシートでの条件付き平均を完全解説
スプレッドシート関数の使い方

AVERAGEIF関数をマスターしよう!スプレッドシートでの条件付き平均を完全解説

| 条件付き関数 IT Note Book

データを管理していると、「特定の条件に合うデータの平均を知りたい」と思うことがありますよね。例えば、売上データから特定の商品カテゴリーの平均売上を調べたり、成績表から特定の科目の平均点を知りたい時などです。そんな時に役立つのが、スプレッドシートの「AVERAGEIF関数」です。

この関数を使えば、簡単に特定の条件に合うデータの平均を計算できます。この記事では、AVERAGEIF関数の使い方や具体的な例を通じて、皆さんがスプレッドシートをもっと便利に使えるようにお手伝いします。

AVERAGEIF関数の基本

AVERAGEIF関数とは?

AVERAGEIF関数は、指定した範囲内で特定の条件に合うデータの平均を計算するための関数です。例えば、特定の文字列や数値が含まれるセルの平均を求めることができます。

AVERAGEIF関数の構文と引数

AVERAGEIF関数の基本的な構文は以下の通りです。

=AVERAGEIF(range, criterion, [average_range])
  • range:条件を判定するセル範囲
  • criterion:平均の条件(数値、式、テキストなど)
  • average_range(省略可能):平均するセル範囲。省略すると、rangeと同じ範囲が使用されます。

基本的な使用例

まずは、基本的な使用例を見てみましょう。

数値の平均

例えば、セル範囲A1に数値が入力されているとします。この中から50以上の数値の平均を計算したい場合、以下のように記述します。

=AVERAGEIF(A1:A10, ">=50")
A1A2A3A4A5A6A7A8A9A10
55456030705085409020

上記の例では、50以上の数値の平均は70です。

テキストを条件にした平均

次に、セル範囲B1に商品名、セル範囲C1にその商品の売上が入力されているとします。この中から「商品A」の売上の平均を計算したい場合、以下のように記述します。

=AVERAGEIF(B1:B10, "商品A", C1:C10)
B1B2B3B4B5B6B7B8B9B10
商品A商品B商品A商品C商品A商品B商品A商品C商品A商品B
C1C2C3C4C5C6C7C8C9C10
100200150300250400350500450600

上記の例では、「商品A」の売上の平均は260です。

条件付き平均の具体例

ここからは、具体的な状況でのAVERAGEIF関数の使い方を見ていきましょう。

特定の値を平均する

例えば、セル範囲D1に点数が入力されているとします。この中から80点以上の点数の平均を計算したい場合、以下のように記述します。

=AVERAGEIF(D1:D10, ">=80")
D1D2D3D4D5D6D7D8D9D10
85789267808876908179

上記の例では、80点以上の点数の平均は86.4です。

数値の範囲で平均する

セル範囲E1に数値が入力されているとします。この中から30以上50未満の数値の平均を計算したい場合、以下のように記述します。

=AVERAGEIF(E1:E10, ">=30") - AVERAGEIF(E1:E10, ">=50")
E1E2E3E4E5E6E7E8E9E10
45322950483651403352

上記の例では、30以上50未満の数値の平均は38.8です。

文字列を含むセルを平均する

セル範囲F1にテキストが入力されているとします。この中から「完了」を含むセルの数値の平均を計算したい場合、以下のように記述します。

=AVERAGEIF(F1:F10, "*完了*", G1:G10)
F1F2F3F4F5F6F7F8F9F10
完了未完了完了進行中完了保留完了未完了完了進行中
G1G2G3G4G5G6G7G8G9G10
100200150300250400350500450600

上記の例では、「完了」を含むセルの数値の平均は250です。

応用テクニック

AVERAGEIF関数は、さらに応用して使うことができます。

複数の条件で平均を求める方法

AVERAGEIF関数を使って複数の条件を組み合わせる場合、以下のようにAND条件とOR条件を使用します。

AND条件

例えば、セル範囲H1で「80以上かつ90以下」の数値の平均を計算する場合、以下のように記述します。

=AVERAGEIFS(H1:H10, H1:H10, ">=80", H1:H10, "<=90")
H1H2H3H4H5H6H7H8H9H10
85788867828891908179

上記の例では、80以上90以下の数値の平均は87.3です。

OR条件

例えば、セル範囲I1で「50以上または70以下」の数値の平均を計算する場合、以下のように記述します。

=AVERAGEIF(I1:I10, ">=50") + AVERAGEIF(I1:I10, "<=70") - AVERAGEIF(I1:I10, ">=50") * AVERAGEIF(I1:I10, "<=70")
I1I2I3I4I5I6I7I8I9I10
5565758595453525155

上記の例では、50以上または70以下の数値の平均は70です。

AVERAGEIF関数を他の関数と組み合わせる

AVERAGEIF関数は、他の関数と組み合わせて使うことができます。

SUMIF関数との組み合わせ

例えば、セル範囲J1で「100以上」の数値の合計を求めたい場合、以下のように記述します。

=SUMIF(J1:J10, ">=100")
J1J2J3J4J5J6J7J8J9J10
1209013080140701506016050

上記の例では、100以上の数値の合計は700です。

エラー処理とデバッグ

AVERAGEIF関数が正しく動作しない場合の対処法についても説明します。

エラーが発生した場合の対処法

AVERAGEIF関数がエラーを返す場合、まずは構文や引数が正しいか確認しましょう。また、範囲や条件が正しく指定されているかもチェックします。

=IFERROR(AVERAGEIF(K1:K10, "条件", L1:L10), "エラーメッセージ")

実践例とサンプルシート

ここでは、具体的な実践例を紹介します。

ビジネスでの活用例

例えば、セールスデータから特定の商品カテゴリーの平均売上を調べる場合、以下のように記述します。

=AVERAGEIF(M1:M10, "商品A", N1:N10)
M1M2M3M4M5M6M7M8M9M10
商品A商品B商品A商品C商品A商品B商品A商品C商品A商品B
N1N2N3N4N5N6N7N8N9N10
100200150300250400350500450600

上記の例では、「商品A」の売上の平均は260です。

学校や教育での使用例

学生の成績表から特定の科目の平均点を調べる場合、以下のように記述します。

=AVERAGEIF(O1:O10, "数学", P1:P10)
O1O2O3O4O5O6O7O8O9O10
数学英語数学理科数学社会数学理科数学英語
P1P2P3P4P5P6P7P8P9P10
85789267808876908179

上記の例では、「数学」の平均点は82.8です。

日常生活での活用方法

家計簿の管理で特定の支出項目の平均を調べる場合、以下のように記述します。

=AVERAGEIF(Q1:Q10, "食費", R1:R10)
Q1Q2Q3Q4Q5Q6Q7Q8Q9Q10
食費交通費食費娯楽費食費交通費食費娯楽費食費交通費
R1R2R3R4R5R6R7R8R9R10
500300400200600300700200800300

上記の例では、「食費」の平均は600です。

よくある質問とトラブルシューティング

AVERAGEIF関数が正しく動作しない場合の対処法

AVERAGEIF関数が正しく動作しない場合、構文や引数が正しいか確認しましょう。また、セル範囲や条件が正しく指定されているかもチェックします。

他の関数と比較したAVERAGEIFの利点

AVERAGEIF関数は、条件付きでデータを平均するのに非常に便利です。特に、簡単な条件でデータを平均したい場合に最適です。

よくあるエラーとその修正方法

AVERAGEIF関数がエラーを返す場合、まずは構文や引数が正しいか確認しましょう。また、セル範囲や条件が正しく指定されているかもチェックします。

まとめ

AVERAGEIF関数は、特定の条件に合うデータを簡単に平均できる非常に便利な関数です。基本的な使い方から応用テクニックまでを理解することで、データ分析をより効率的に行えるようになります。