使用関数:AVERAGEIF
AVERAGEIF関数は同じ条件の値を検索して平均値を出します。条件の指定にはワイルドカードも使えます。その基本的な使い方、条件を検索する範囲と平均値を算出する値の範囲の指定方法などを図解します。
AVERAGEIFの基本的な使い方
AVERAGEIF(アベレージ・イフ)は、雑多な項目が混在したデータ表から或る項目の数値だけを取り出して平均値を求めることができます。
売上表からカットだけの1日平均施術件数を表示したいと思います。
平均件数を表示するセルを選択し、「数式」タブ「関数ライブラリ」→「その他の関数」→「統計」から「AVERAGEIF」をクリックします。
関数の引数ダイアログが開きます。
最初の引数「範囲」とは条件を検索する範囲のことです。ここで指定した中から、次の引数「条件」で指定した値を探すわけですね。
ここでは、「施術メニュー」が並ぶE列全体を指定します。列アルファベットの「E」のエリアにポイントし、下向きの小さな黒矢印が出たらクリック。引数「範囲」に「E:E」と列が指定されました。
次の引数「条件」は「カット」と入った「E2」セルをクリックしてを指定します。文字列で「"カット"」と指定してもOK。
最後の引数「平均対象範囲」は平均値を算出する数値が入ったセル範囲です。ここでは「施術数」の並んだG列全体を指定。「カット」と同じレコード内で、「施術数」フィールドに相当するセルの値の平均を出すということです。
数式は「=AVERAGEIF(E:E,"カット",G:G)」となります。「E列の施術メニューからカットを探し、それに対応するG列の施術数の数値で平均値を算出する」
「範囲」と「平均対象範囲」を指定するコツ
AVERAGEIFを使いこなすポイントは、引数の「範囲」と「平均対象範囲」の指定にあります。この2つの範囲指定のコツを掴みましょう。
「範囲」と「平均対象範囲」は相対させ、行(列)数を合わせる
前章の例ではどちらの範囲も列全体を指定しましたから、行数は同じです。
表内の特定の範囲を指定する時も、行数(または列数)を同じにします。異なった行数範囲を指定すると、正常な結果が得られません。
複数列の指定/「範囲」と「平均対象範囲」を相対させるとは?
「範囲」と「平均対象範囲」を相対させるとは具体的にどのようなことか、複数列の範囲指定で解説します。
AVERAGEIFで複数列指定をするのは、組ごとに「氏名」「性別」「試験の総合点」が交互に並ぶ下図の表のような例です。
この中から、男子の試験成績の平均点を算出してみましょう。
最初の引数「範囲」の指定は「B3:H15」。条件を検索する「性別」のセル範囲を、間の「氏名」や「総合点」列までひっくるめて指定します。
「条件」には「男」と指定。
最後の引数「平均対象範囲」の指定は「C3:I15」。平均値を出す値の入った「総合点」のセル範囲を、間の「氏名」や「性別」列までひっくるめて指定します。
指定した「範囲」と「平均対象範囲」は共に7列で、相対位置にあるのが分かりますね?
「範囲」の1列目で検索した値を「平均対象範囲」の1列目から抜き出し、「範囲」の4列目で検索した値を「合計範囲」の4列目から抜き出します。7列目も同様。
これらから算出した平均値が返されるということです。
関数の引数ダイアログボックスはこう↓なります。
数式は「=AVERAGEIF(B3:H15,"男",C3:I15)」。
男子の試験成績の平均点が表示されました。
複数の条件を指定する時はAVERAGEIFS関数を使う
- AVERAGEIF関数は条件に一致した値の平均値を算出する
- 条件の指定にはワイルドカードが使える
- 引数「範囲」と「平均対象範囲」は相対させる
- 「範囲」と「平均対象範囲」は行(列)数を揃える