SUMPRODUCT関数の構文 -範囲内のすべての数値の積の合計する- DL可

SUMPRODUCT関数の構文 -範囲内のすべての数値の積の合計する-

Excel関数のSUMPRODUCT関数構文について詳しく説明します。

これまでに、姉妹関数のSUM関数シリーズとして、
これ以外にもたくさんの記事をアップしてきました。

他にもたくさんのあるので、興味のある方は調べてみてください。

下図の検索ボックスに、対象のキーワードを入れて、探して見てください。



なお、SUM関数シリーズとして扱うかを悩みましたが、

合計(SUM)に加えて、積(PRODUCTS)という概念が登場するため、

別途紹介することにしました。

以下の手順で説明してますので適宜、読み飛ばしください。

「例題」→「解答」→「構文解説」です。

例題

下記サンプルデータの売上金額の合計を求めてみましょう。
つまり、各商品の単価×販売数量を合計した「全商品の売上合計」を算出します。

解答付きサンプルデータ

解答付きサンプルデータが欲しい方は、下記からダウンロードしてください。

解答

SUMPRODUCT関数を使用します。
なお、関数を使わずに求めることもできます。

間違いやすいし、大変ですが、記事後半で紹介しています。

=SUMPRODUCT($B$2:$B$6, $C$2:$C$6)

SUMPRODUCT関数の構文 -範囲内のすべての数値の積の合計する-

解説

ざっくり解説

関数の構文は以下です。[]の引数は省略可能です。

=SUMPRODUCT(配列1, [配列2], …)

そのため、

=SUMPRODUCT(単価, 販売数量)

となる具体的な範囲を配列として指定すればいいので、

下記の関数式となるわけです。

=SUMPRODUCT($B$2:$B$6, $C$2:$C$6)




Code language: HTTP (http)

くわしく解説

解説を読む前に、巻末の参考記事もチェックしておくと良いため、時間があれば覗いてみてください。

SUMPRODUCT関数とは

Excel標準機能の[関数の挿入]ダイアログ/[関数の引数]ダイアログを大体のことは書かれているので、
活用して詳しく解説します。

ダイアログの使い方は、巻末の参考記事を参照していただければと思います。

SUMPRODUCT関数とは

範囲または配列の対応する要素の積を合計した結果を返す

[関数の挿入]ダイアログより


「SUM」は「を意味し、

「PRODUCTS」は「を意味します。

範囲内のすべての数値の合計を計算します。

SUMPRODUCT関数の構文

SUMPRODUCT関数の構文

下記が関数の構文です。[]の引数は省略可能です。

=SUMPRODUCT(配列1, [配列2], …)

引数で指定された配列同士を掛け算し、その(PRODUCTS)を合計(SUM)しています。

第1引数:配列1
SUMPRODUCT関数の第1引数の配列1

配列1: 配列1,配列2,… には、要素の積の合計を求めたい配列を2~255個まで指定できます。引数となる配列は、行数と列数が等しい配列である必要があります。

[関数の挿入]ダイアログより

配列1には、セル範囲を指定すればOKです。

先程配列の説明をしましたが、難しいことは考えてなくよいです。

ここでは、配列1は、単価$B$2:$B$6」のセル範囲を指定しいます。

配列に関して、詳しく知りたい方は『Excel関数の引数とは』をご確認ください。

第2引数:配列2
SUMPRODUCT関数の第1引数の配列2

配列2: 配列1,配列2,… には、要素の積の合計を求めたい配列を2~255個まで指定できます。引数となる配列は、行数と列数が等しい配列である必要があります。

[関数の挿入]ダイアログより

配列2も、配列1と同様です。

ここでは、配列2販売数量$C$2:$C$6」のセル範囲をしています。

第1引数「単価」、第2引数「販売数量」を引数にセットしましたが、
逆の順番でも問題ありません

なぜなら、これらの引数は単に掛け算されるだけだからです。

引数のセット時の注意点

ダイアログボックスに注意点が記載されています。

分かりづらいので、簡潔に整理します。

  • 配列1と配列2の要素数は同じである必要があること
    ※なぜなら、要素数が異なると計算ができないから
  • 第1引数と第2引数は省略できない
    ※なぜなら、1つのデータのみでは掛け算ができないから

要素数が異なると掛け算できず、1つのデータのみでは掛け算ができないからです。

掛け算の仕組みを考えれば、いずれも当たり前の考えです。

SUMPRODUCT関数で悩んだら・・・

掛け算に立ち戻って

考えてみましょう。

各引数の入力結果

ダイアログボックスに沿って、引数を入力します。

SUMPRODUCT関数の入力結果


引数の入力結果数式の結果まで表示されます。
ダイアログボックスの良い所です。

[OK]をクリックすると、完成です。

引数で指定された配列同士を掛け算し、
その(PRODUCTS)を合計(SUM)された結果です。

SUMPRODUCT関数の構文 -範囲内のすべての数値の積の合計する-

別解2 ⇒ 力技

関数を使用せずとも、算出することができます。

=B2*C2+B3*C3+B4*C4+B5*C5+B6*C6

実は、こちらの別解2こそ、SUMPRODUCT関数のロジックそのものなのです。

具体的には・・・

=商品1の単価*商品1の販売数量+商品1の単価*商品1の販売数量+・・・・

としているだけで、単純です。

ただ、関数を使用せずに算出するのは間違いやすいし、

面倒ですし、データ数が増えると、さらに大変です。

フォローアップ

外観上は数値のケース

関数では、”引数に文字列を設定してならない”と記載されています。

ただし、外観上は数値の場合には正常に動作します。

例えば、以下の2つのケースではどちらも「999」という値が数値に見えます。

しかし、2行目の「999」は書式が文字列です。

本来ならばルール違反であり、関数はエラーを返すべきですが、
実際には正常に動作します。

おそらく、裏で数値変換が行われているものと考えられます。

そのため、書式が文字列でも外観上数値であれば、関数は正常に動作するようです。

最後に

本記事では、SUMPRODUCT関数を詳しく解説しました。

この関数は、Excelで複数の要素を掛け算し、それらの合計を計算する際に強力です。

データの加重平均値や合計値を効率的に計算することができます。

さらに、重回帰分析の予測値をExcelで求めることさえ、できます。

ぜひこの強力な関数を活用して、Excelでの作業を効率化しましょう。

解答付きのサンプルデータも提供していますので、実際に手を動かして練習してみてください。

それでは、SUMPRODUCT関数を活用して、データ処理のスキルを高めていきましょう!
今後、SUMPRODUCT関数の活用記事もアップしてきたいです。

—————————————
参考記事
—————————————

原理原則に関する記事

Excel関数自体の原理原則に関する記事です。こちらを参照すると、個別の関数の理解がさらに深まるでしょう。

構文に関する記事

Excel関数の引数と戻り値は何だっけ?という時に、役立つ記事です。

Excel関数にはそれぞれ構文がある

Excel関数には構文があります。それが、引数と戻り値です。構文に沿えばいいだけです。言わば、数学の公式のようなものです。理論を知らなくても、公式に当てはめれば答え…

Excel関数の引数とは

Excelの引数は、料理を完成させるための材料のようなものです。しかも、材料に種類があります。その種類を理解すると、Excel関数を上手く使いこなせるようになります。

ダイアログボックスの使い方に関する記事

Excel関数名は何だっけ?VLOOKUP関数の使い方は何だっけ?という時に、ダイアログボックスを使うと便利です。
下記はそのダイアログボックスに関する記事です。

Excelの検索ダイアログから、関数を探す

Excelの検索ダイアログに使えば、目的の関数を発見しやすくなります。WEB検索する前に、Excel関数の検索ダイアログを使ってみましょう。

Excelのダイアログに沿って、関数を使う

Excelのダイアログに使えば、関数の使い方を調べることができます。言わば、関数のガイドラインのようなものです。

参照形式に関する記事

関数式をコピーする時はどうしたらいい?
$マークは、どう付けたらいいだろう?
といった悩みをお持ちの方は以下をご覧ください。

絶対参照/相対参照/複合参照とは

絶対参照/相対参照/複合参照とは何かをどこよりも分かりやすく解説します。

絶対参照/相対参照/複合参照の使い方

「絶対参照」「相対参照」「複合参照」は、どうやって使うのかを紹介します。 ポイントは、「$マークは、直後にあるモノを固定する」です。