
前回AVERAGEIF関数について解説しました。
AVERAGEIF関数で条件に合ったデータの平均値を求める方法 | Excelを制する者は人生を制す ~No Excel No Life~
今回は、条件が複数ある場合に同じように特定のデータで平均値を求めることができるAVERAGEIFS関数について解説していきます。
こちらも基本的な考え方や使用方法はSUMIFS関数とほぼ同じなので、感覚的に理解しやすはずですよ!
SUMIFS関数で複数の検索条件に合ったデータのみ合計する方法 | Excelを制する者は人生を制す ~No Excel No Life~
AVERAGEIFS関数の基本構成
AVERAGEIFS(平均対象範囲,検索範囲1,検索条件1,[検索範囲2,検索条件2],[検索範囲3,検索条件3],…)
平均対象範囲
平均対象のセル範囲を指定します。
AVERAGEIF関数ではこの要素の順番が真逆です。(AVERAGEIF関数では一番最後)
混同しないようにご注意ください。
検索範囲1(2以降も同様)
[条件]を抽出する範囲を指定します。
[検索範囲]と[条件]の数字がそれぞれ2つ1組のセットになっています。
条件1(2以降も同様)
検索対象の文字列やセル番地を指定します。
条件に関する考え方はCOUNTIF関数と一緒です。(詳細は下記記事参照)
COUNTIF関数で覚えておくと捗る検索テクニック | Excelを制する者は人生を制す ~No Excel No Life~
AVERAGEIFS関数の使用例
今回のサンプルではクラス毎・男女別の平均値を算出したいとします。
その場合、条件はC列の「クラス」とD列の「性別」の2つとなります。
数式を作成する際は、起点となるO4セルにまず記述していきます。
最初は、[平均対象範囲]となE列を指定します。その際、後々コピペすることを見越して、行は絶対参照、列は相対参照にしておきます。
続いて、条件の一つ目、「クラス」はC列にあるため、[条件範囲1]はC列を指定し、[条件1]はM3セルを指定しておきます。
この際、後々コピペすることを見越して、[条件範囲1]は行列ともに絶対参照、[条件1]は行は相対参照、列は絶対参照にしておきます。
最後に、条件の二つ目、「性別」はD列にあるため、[条件範囲2]はD列を指定し、[条件2]はN3セルを指定しておきます。
この際、後々コピペすることを見越して、[条件範囲2]は行列ともに絶対参照、[条件2]は行は相対参照、列は絶対参照にしておきます。
絶対参照・相対参照を間違いなく設定しておくと、O4セルの数式をコピーし、O4:T8の全域にペーストすることで一括処理が可能になります。
なお、AVERAGEIFS関数の結果によって、小数点以下の桁数にばらつきがあるため、表示形式をそろえます。
対象範囲となるO4:T6を選択した上で【マウス右クリック→「セルの書式設定」】か、【[Ctrl]+F1】のどちらかで「セルの書式設定」ダイアログを表示させます。
- [分類]は「数値」を選択
- [小数点以下の桁数]を”1″を入力
- 「OK」をクリック
2.の部分は任意の桁数を設定しましょう。
表示形式の詳細は下記記事をご参照ください。
Exceのセル書式設定「表示形式」のおすすめユーザー定義【数値編】 | Excelを制する者は人生を制す ~No Excel No Life~
小数点以下が1桁にそろいました!
ワークシート上で確認すると、上図のようになります。
まとめ
AVERAGEIFS関数はSUMIFS関数と同様に複数の条件をシンプルな数式で活用できるのが大変に便利です。
今までは、複数条件の平均値を求めるために、SUMPRODUCT関数などの並列関数で個数と合計値を算出した上で、その合計値を個数で除算するという少なくとも3プロセスが必要でしたからね。
唯一注意すべきは、[平均対象範囲]の位置がAVERAGEIF関数と真逆な部分だけですね。
ここだけ気をつければ、大筋はAVERAGEIF関数の感覚で使用できますので、まだ活用しきれていない方はぜひ使ってみてください!
次回以降は同じく~IFSというつながりでCOUNTIFS関数にも触れていきます。