【Excel・エクセル】SUMPRODUCT関数の使い方!掛け算したものを足し算

もりの

金額と個数をかけ算したものを、足し算していかなきゃ。

やまの

それなら、SUMPRODUCT関数を使ってみよう。

今回のポイント
  • 積の合計を求めるならSUMPRODUCT関数
  • =SUMPRODUCT(配列1,配列2,配列3……)
  • 配列には条件の指定もできる
  • ワイルドカードは使えない

スポンサーリンク

 SUMPRODUCT関数の練習ファイルダウンロード

もりの
 
 

一緒にやってみませんか?

【Excel・エクセル】積を合計する、SUMPRODUCT関数とは

SUMPRODUCT関数の使用例

SAMは足し算する関数、PRODUCTはかけ算する関数ですよね。
つまりSUMPRODUCT関数は、足し算と掛け算を組み合わせた関数なんです。

やまの

かけ算して出た積(かけ算の答え)を、足していってくれるんよ。

もりの

今までそれぞれの合計を出して、それを足し算してたけど、コレなら一発でできるんだね。

ちなみに読み方は「サムプロダクト関数」です。

ではさっそく、使い方を見ていきましょう!

【Excel・エクセル】SUMPRODUCT関数の使い方

関数の書き方

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

SUMPRODUCT配列1と配列2と……をかけ算して、出た答えを合計してね
配列1かけ算したい範囲
配列2配列1とかけ算したい範囲

ちなみに配列の範囲(広さ)は、同じじゃないといけません。

範囲が違うとエラーになってしまうので、ご注意ください。

配列の範囲がバラバラな画像
範囲の広さは合わせましょう
もりの

引数は一つでも大丈夫!

SUMPRODUCT関数の使用例

では、次の図のセルA7に、B列とC列の積の合計を出してみましょう。

SUMPRODUCT関数の練習問題
SUMPRODUCT関数を使ってみよう
やまの

=SUMPRODUCT(B2:B4,C2:C4)で、求められるよ。説明するね。

ステップ1

セルA7に、「=SUMPRODUCT(」と入力してください。

または、「=SUMP」まで入力して「TABキー」でもOKです。

「=SUMPRODUCT(」と入力した画像
「=SUMPRODUCT(」と入力

ステップ2

最初の引数は配列1、かけ算したい範囲でした。2×5で言うと、2の部分ですね。
今回は、B列とC列の数値をかけ算したいので、まずはB列、セルB2~B4ですね。

セルB2~B4をドラッグして、「,(カンマ)」を入力してください。

かけられる数の範囲をドラッグした画像
かけられる数の範囲をドラッグ

ステップ3

次の引数は配列2、もう一つのかけ算したい範囲でした。2×5で言うと、5の部分ですね。

今回はC列、セルC2~C4ですね。

セルC2~C4をドラッグして、カッコを閉じてください。

かける数の範囲をドラッグした画像
かける数の範囲をドラッグ

完成!

これで完成です!

エンターキーを押すと、無事、積の合計が出せました!

SUMPRODUCT関数を使った表
D列の合計と同じ

ためしにB列とC列をかけ算したものをD列に出して、そられを合計してみると、同じ数値になりましたね!

【Excel・エクセル】SUMPRODUCT関数の使い方、応用編

このSUMPRODUCT関数ですが、実は計算するだけではありません。

実は引数(配置)には文字列なども使えます。
これを使って、条件に合うセルの数や、条件に合うセルの合計も分かっちゃいます!(ただちょっとポイントがあります)

やまの

理論式が使えるんよ。

SUMPRODUCT関数で、条件に合うセルの合計を求める

SUMPRODUCT関数を使うと、SUMIF関数のように、条件に合う値の合計ができます。
書き方は以下の通り。

関数の書き方

=SUMPRODUCT((配列1=条件)*(配列2))

厳密には配列1、2と呼ぶのはちょっと違う気もしますが、便宜上そう呼ばせてください。

上記の書き方は条件に文字列を用いた場合ですが、もちろん不等号(>,<)なども使えます。
配列の中で3以上のものなら、「配列1>=3」といった具合です。

ちなみに、ワイルドカードは使えません……。

次の図のセルE2に、商品名がアメの合計金額を出したいと思います。

SUMPRODUCT関数の練習問題
SUMPRODUCT関数の応用技を見せてあげる!
やまの

配列1と2を、「,(カンマ)」じゃなくて「*(アスタリスク)」でつなげるのがポイントなんよ。

複数条件の合計を求めたい場合は、こちらをご参照ください。

ステップ1

何はともあれ、まずはSUMPRODUCT関数を書きましょう。

セルE2に、「=SUMPRODUCT(」と入力します。

「=SUMP」まで入力して「TABキー」でもOKです。

「=SUMPRODUCT(」と入力した画面
まずは「=SUMPRODUCT」

ステップ2

次に配列1ですが、その前に「(」をもう一つ入れるのを忘れないでくださいね!

入力したら、今回アメの単価を合計したいので、商品名が書かれたセルA2~A10をドラッグします。

SUMPRODUCT関数の配列1を指定した画像
配列の前に「(」を忘れずに!

ステップ3

続いて条件ですが、今回は「商品名がアメ」が条件なので、「="アメ"」となりますね。

続いて「)」、配列2へ移るので「*」を忘れずに!

SUMPRODUCT関数の条件を入力した画像
条件を入力
もりの

文字列の時は「"(ダブルクォーテーション)」で囲むんだよね。

ステップ4

配列2もそのままセル範囲をドラッグしたくなりますが、ここはぐっとこらえて「(」を入れましょう。

入れたら配列2を選択します。
今回は合計金額を出したいので、セルC2~C10をドラッグします。

配列2まで終わったのでカッコで締めたいのですが、ここもまたちょっとややこしく、「))」とカッコが二つ続くのでご注意ください。

SUMPRODUCT関数でカウントするときの式
配列2を選択し、カッコ2つで閉じる
やまの

配列2が終わる「)」と、SUMPRODUCT関数が終わる「)」だね。

完成!

これで式は完成です。
エンターキーで確定すると……

無事、アメの金額だけを合計できました!

SUMPRODUCT関数で、複数条件に合うセルをカウントする

SUMPRODUCT関数を使うと、COUNTIFS関数のように、条件に合うセルの数をカウントできます。
書き方は以下の通り。

関数の書き方

=SUMPRODUCT((配列1=条件)*(配列2=条件))

厳密には配列1、2と呼ぶのはちょっと違う気もしますが、便宜上そう呼ばせてください。

こちらも、もちろん不等号(>,<)なども使えます。
配列の中で3以上のものなら、「配列1>=3」といった具合です。

やまの

これも配列1と2を、「,(カンマ)」じゃなくて「*(アスタリスク)」でつなげるのがポイントなんよ。

もちろん「*」でつなげれば、条件を3つ4つと増やせます。

次の図のセルE5に、商品名がアメかつ、味がバナナの数をカウントしたいと思います。

SUMPRODUCT関数の練習問題
SUMPRODUCT関数の応用技を見せてあげる!

ステップ1

お分かりかと思いますが、まずはSUMPRODUCT関数を書きましょう。

セルE5に、「=SUMPRODUCT(」と入力します。

「=SUMP」まで入力して「TABキー」でもOKです。

「=SUMPRODUCT」と入力した画面
まずは「=SUMPRODUCT」

ステップ2

次に配列1ですが、その前に「(」をもう一つ入れるのを忘れないでくださいね!

入力したら、今回は1つ目の条件としてアメをカウントしたいので、商品名が書かれたセルA2~A10をドラッグします。

SUMPRODUCT関数の配列1を指定した画像
配列の前に「(」を忘れずに!

ステップ3

続いて条件ですが、今回は「商品名がアメ」が条件なので、「="アメ"」となりますね。

続いて「)」、配列2へ移るので「*」を忘れずに!

一つ目の条件を入力した画像
条件を入力
もりの

文字列の時は「"(ダブルクォーテーション)」で囲むんだよね。

ステップ4

配列2もそのままセル範囲をドラッグしたくなりますが、ここはぐっとこらえて「(」を入れましょう。

入れたら、2つ目の条件の範囲を選択します。
今回はバナナ味の数をカウントしたいので、味が書かれたセルB2~B10をドラッグします。

2つ目の条件の範囲を選択した画面
2つ目の条件の範囲を選択

ステップ5

次に2つ目の条件を指定します。
今回は、バナナ味の数をカウントしたいので、「="バナナ"」と入力します。

配列2まで終わったのでカッコで締めたいのですが、ここもまたちょっとややこしく、「))」とカッコが二つ続くのでご注意ください。

2つ目の条件を指定した画像
2つ目の条件を指定
やまの

配列2が終わる「)」と、SUMPRODUCT関数が終わる「)」だね。

完成!

これで式は完成です。
エンターキーで確定すると……

無事、バナナ味のアメの個数がカウントできました!

アメかつバナナ味の個数がカウントできた画像
アメかつバナナ味の個数がカウントできた

SUMPRODUCT関数で、複数条件に合うセルの合計を求める

SUMPRODUCT関数を使うと、SUMIFS関数のように、複数の条件に合うセルの数値を合計できます。
書き方は以下の通り。

関数の書き方

=SUMPRODUCT((配列1=条件)*(配列2=条件),配列3)

厳密には配列1、2と呼ぶのはちょっと違う気もしますが、便宜上そう呼ばせてください。

こちらも、もちろん不等号(>,<)なども使えます。
配列の中で3以上のものなら、「配列1>=3」といった具合です。

やまの

これも配列1と2を、「,(カンマ)」じゃなくて「*(アスタリスク)」でつなげるのがポイントなんよ。

こちらも「*」でつなげば、条件を3つ、4つと増やせますよ。

次の図のセルE8に、商品名がガムかつ、味がみかんの金額を合計したいと思います。

SUMPRODUCT関数で複数条件の合計を出したい表
SUMPRODUCT関数の応用技を見せてあげる!

ステップ1

もうお分かりですよね?まずはSUMPRODUCT関数を書きましょう。

セルE5に、「=SUMPRODUCT(」と入力します。

「=SUMP」まで入力して「TABキー」でもOKです。

「=SUMPRODUCT」と入力した画像
まずは「=SUMPRODUCT」

ステップ2

次に配列1ですが、その前に「(」をもう一つ入れるのを忘れないでくださいね!

入力したら、今回は1つ目の条件としてガムをカウントしたいので、商品名が書かれたセルA2~A10をドラッグします。

SUMPRODUCT関数の配列1を指定した画像
配列の前に「(」を忘れずに!

ステップ3

続いて条件ですが、今回は「商品名がガム」が条件なので、「="ガム"」となりますね。

続いて「)」、配列2へ移るので「*」を忘れずに!

1つ目の条件を入力した画像
条件を入力
もりの

文字列の時は「"(ダブルクォーテーション)」で囲むんだよね。

ステップ4

配列2もそのままセル範囲をドラッグしたくなりますが、ここはぐっとこらえて「(」を入れましょう。

入れたら、2つ目の条件の範囲を選択します。
今回はみかん味なので、味が書かれたセルB2~B10をドラッグします。

2つ目の条件の範囲を選択した画面
2つ目の条件の範囲を選択

ステップ5

次に2つ目の条件を指定します。
今回はみかん味の金額を合計したいので、「="みかん"」と入力します。

カッコで締め、次の引数に移るので「,(カンマ)」も入れておいてくださいね。

2つ目の条件を指定した画像
2つ目の条件を指定

ステップ6

最後に、合計する数値の範囲を指定します。

今回は金額の合計を出したいので、単価が書かれたセルC2~C10ですね。
セルC2~C10をドラッグして、式は完成なのでカッコを閉じます。

合計したい範囲を選択した画像
最後に合計したい範囲を選択

完成!

これで式は完成です。
エンターキーで確定すると……

無事、みかん味のガムの合計金額が出せました!

ガムかつみかん味の金額が合計できた画像
ガムかつみかん味の金額が合計できた

工夫次第で、いろんなシーンんで使えそうですね!
それでは、お疲れさまでした!

今回のおさらい
  • 積の合計を求めるならSUMPRODUCT関数
  • =SUMPRODUCT(配列1,配列2,配列3……)
  • 配列には条件の指定もできる
  • ワイルドカードは使えない