エクセルで加重平均を求める方法|SUMPRODUCT・単純平均との違い・平均単価

エクセルで加重平均を求める方法|SUMPRODUCT・単純平均との違い・平均単価

エクセルで、加重平均を求めるには、SUMPRODUCT関数で「値×重み」の合計を出して、SUM関数で「重みの合計」で割ります。式は、=SUMPRODUCT(B3:B7,C3:C7)/SUM(C3:C7) です。科目ごとの単位数が違うときの平均点や、数量が違う商品の平均単価に、使えます。

この記事では、加重平均の考え方、SUMPRODUCT関数での求め方、単純平均との違い、平均単価の計算、重みを割合で表す方法を、1つの表を使って説明します。下の練習ツールで、点数や単位数を書き換えて、結果の変わり方を試せます。

目次

加重平均の計算|やりたいこと別の式

やりたいこと式(例)ポイント
加重平均を、求める=SUMPRODUCT(B3:B7,C3:C7)/SUM(C3:C7)「値×重み」の合計を、重みの合計で割ります。
単純平均を、求める(比べる)=AVERAGE(B3:B7)重みを考えない、ふつうの平均です。
小数第1位に、丸める=ROUND(SUMPRODUCT(B3:B7,C3:C7)/SUM(C3:C7),1)ROUND関数で、桁数を整えます。
「値×重み」の列を、作って求める=SUM(D3:D7)/SUM(C3:C7)列を、見せたいときに向いています。
重みの割合を、求める=ROUND(C3/SUM($C$3:$C$7)*100,1)重みの合計を、固定します。
平均単価を、求める=SUMPRODUCT(単価,数量)/SUM(数量)数量が重みになります。
条件付きの加重平均を、求める=SUMPRODUCT((条件範囲=条件)*値*重み)/SUMIFS(重み,条件範囲,条件)条件に合うものだけを、計算します。
ポイントポイント:加重平均の「重み」は、単位数・数量・人数・金額など、その値が、どれだけ重要か(どれだけ多いか)を表す数です。重みが大きい値ほど、平均を、引っ張ります。

まず動かしてみよう|この記事のサンプルをその場で試せます

練習用ファイルをダウンロードしなくても、記事と同じデータ・同じセル番地のサンプルをここで動かせます。黄色いセルを書き換えると、結果がその場で変わります。各解説の最後にある「▶ この式を試す」を押すと、このツールの該当セルへ移動します。

加重平均の考え方(単純平均との違い)

単純平均は、すべての値を、同じ重さで、平均します。加重平均は、値ごとに、重さ(重み)を付けて、平均します。たとえば、単位数が4の数学と、単位数が2の英語は、同じ重さで、平均してはいけません。

練習表の点数を、単純に平均すると 77 点ですが、単位数を重みにすると、加重平均は、約 77.9 点になります。単位数の大きい数学(90点)が、平均を押し上げています。

SUMPRODUCT関数で、加重平均を求める

SUMPRODUCT関数は、2つの範囲の、対応する値どうしを掛けて、合計します。つまり、「点数×単位数」の合計が、1つの式で、求まります。それを、単位数の合計で割ります。

1
結果を出したいセル(I3)を選びます。
2
「=SUMPRODUCT(」と入力して、点数の範囲(B3:B7)、「,」、単位数の範囲(C3:C7)を指定して「)」を入力します。
3
「/SUM(C3:C7)」と入力します。
4
Enter キーを押します。
SUMPRODUCT関数の式
数式=SUMPRODUCT(B3:B7,C3:C7)/SUM(C3:C7)
ひとことで掛け算の合計を求める
B3:B7
1つ目の範囲です
C3:C7)/SUM(C3:C7
2つ目の範囲です
エクセルで加重平均を求めた表(科目、点数、単位数、点数×単位、重み、各式の結果)
エクセルで加重平均を求めた表(科目、点数、単位数、点数×単位、重み、各式の結果)

点数×単位数の合計が1090、単位数の合計が14なので、加重平均は、1090÷14で、約 77.86 です。小数第1位に丸めるなら、ROUND関数を使って、77.9 です。SUMPRODUCT関数の、くわしい使い方は、SUMPRODUCT関数の使い方を参照してください。

「値×重み」の列を作って、加重平均を求める

計算の過程を、見せたいときは、「点数×単位数」の列を、作ります。その列を、SUM関数で合計して、単位数の合計で、割ります。

SUM関数の式
数式=SUM(D3:D7)/SUM(C3:C7)
ひとことで合計を求める
D3:D7)/SUM(C3:C7
合計する範囲です

結果は、SUMPRODUCT関数と同じです。D列の各セルは、=B3*C3 で、国語は 240、数学は 360 になります。

重みを割合(%)で表す

重みが、全体の何%を占めるかは、重みを合計で割って、求めます。合計の範囲は、絶対参照で、固定します。

ROUND関数の式
数式=ROUND(C3/SUM($C$3:$C$7)*100,1)
ひとことで四捨五入する
C3/SUM($C$3:$C$7)*100
四捨五入する数値です
1
桁数です

国語の単位数3は、合計14の 21.4%です。重みの割合を、すべて足すと、100%になります。「$」の付け方は、絶対参照・相対参照とはを参照してください。

平均単価を求める(数量が重み)

数量の違う商品の、平均単価は、単価に数量を掛けた金額の合計を、数量の合計で、割って求めます。単価の単純平均では、正しい値になりません。

SUMPRODUCT関数の構文
数式=SUMPRODUCT(単価の範囲,数量の範囲)/SUM(数量の範囲)
ひとことで掛け算の合計を求める
単価の範囲
1つ目の範囲です
数量の範囲)/SUM(数量の範囲
2つ目の範囲です

金額の合計が、そのまま、売上の合計に一致するので、「数量が重みの、加重平均」です。割合の計算は、割合(構成比)を求める方法も参照してください。

加重平均がおかしいときの確認表

症状考えられる原因対処
単純平均と、同じ値になる重みが、すべて同じ重みの列を、確認する。
「#VALUE!」と表示される範囲の、行数が違う2つの範囲の、大きさをそろえる。
値が、大きすぎる重みの合計で、割っていない「/SUM(重みの範囲)」を付ける。
「#DIV/0!」と表示される重みの合計が、0重みに、0以外の値を入れる。
文字の重みが、無視される数値ではなく、文字列になっている数値に直す。
コピーすると、範囲がずれる範囲に、「$」を付けていない範囲を、絶対参照で固定する。
値を変えても、結果が変わらない計算方法が「手動」になっている「数式」タブの「計算方法の設定」を「自動」にする。

加重平均のよくある質問

加重平均を求める関数は?

専用の関数は、ありません。SUMPRODUCT関数で「値×重み」の合計を求めて、SUM関数で、重みの合計を求めて、割ります。

単純平均との違いは?

単純平均は、すべての値を、同じ重さで平均します。加重平均は、重みの大きい値が、平均に、強く影響します。

平均単価を、求めるには?

=SUMPRODUCT(単価,数量)/SUM(数量) です。単価の単純平均では、数量の違いが、反映されません。

あわせて読みたい:平均・SUMPRODUCTの関連記事

練習用ファイル:練習用Excelファイル(.xlsx・無料)

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

目次