SUMPRODUCT関数の概要
SUMPRODUCT関数はExcelの数学関数の一つで、指定した複数の配列内の対応する要素を掛け合わせ、その積の合計を返すものです。
基本的な構文
SUMPRODUCT(array1, [array2], [array3], ...)
パラメータの説明
- array1: 必須。掛け合わせて合計を求める最初の配列。
- array2, array3, …: 任意。2つ目以降の配列で、最大255個まで指定可能。
注意事項
- 配列の次元は一致している必要があります。一致しない場合、#VALUE! エラーが返されます。
- 非数値の要素は0として扱われます。
基本的な使用方法の例
目的
特定の条件に基づいて支給される手当の合計を求める。
方法
以下のように入力します。
=SUMPRODUCT(C3:C7 * D3:D7)
または
=SUMPRODUCT(C3:C7, D3:D7)
説明
最初の方法では、C列とD列の対応する要素を掛け合わせて、その合計を求めます。2つ目の方法でも同じ結果が得られますが、データに文字列が含まれる場合は2つ目の方法を使用することでエラーを回避できます。
使用例
名前 | 手当 | 支給額 |
---|---|---|
A | 5 | 1000 |
B | 3 | 1500 |
C | 4 | 1200 |
D | 2 | 1800 |
以下の式を使って、手当の合計を計算します:
=SUMPRODUCT(B2:B5 * C2:C5)
結果:11,900
単一条件でのカウント
目的
女性の人数を数える。
方法
以下の式を使います:
=SUMPRODUCT(N(C3:C7="女"))
使用例
名前 | 性別 |
---|---|
A | 男 |
B | 女 |
C | 女 |
D | 男 |
この式の結果は2になります。
複数条件でのカウント
目的
80点以上の女性の人数を数える。
方法
以下の式を使います:
=SUMPRODUCT((C3:C7="女") * (D3:D7>80))
使用例
名前 | 性別 | 成績 |
---|---|---|
A | 男 | 85 |
B | 女 | 90 |
C | 女 | 78 |
D | 男 | 88 |
この式の結果は1になります。
複数条件での合計
目的
80点以上の女性の点数の合計を求める。
方法
以下の式を使います:
=SUMPRODUCT((C3:C7="女") * (D3:D7>80) * D3:D7)
使用例
名前 | 性別 | 成績 |
---|---|---|
A | 男 | 85 |
B | 女 | 90 |
C | 女 | 78 |
D | 男 | 88 |
この式の結果は90になります。
月別の売上合計
目的
各営業担当者の11月の売上合計を計算する。
方法
以下の式を使います:
=SUMPRODUCT((MONTH(B3:B7)=11) * (C3:C7=担当者名) * E3:E7)
使用例
日付 | 担当者 | 売上 |
---|---|---|
2023-11-01 | A | 2000 |
2023-11-02 | B | 1500 |
2023-12-01 | A | 1800 |
2023-11-03 | B | 1200 |
2023-11-04 | A | 2500 |
以下の式を使って、11月のA担当者の売上合計を計算します:
=SUMPRODUCT((MONTH(A2:A6)=11) * (B2:B6="A") * C2:C6)
結果:4500
FAQ
SUMPRODUCT関数はどのような場合に使用しますか?
SUMPRODUCT関数は、複数の条件に基づいてデータを集計したい場合に便利です。例えば、特定の条件を満たす行の数を数えたり、その合計を求めたりするのに使えます。
SUMPRODUCT関数でエラーが出るのはなぜですか?
SUMPRODUCT関数で#VALUE! エラーが出る主な原因は、配列の次元が一致していない場合や、数値以外のデータが含まれている場合です。配列の次元を確認し、必要に応じて数値に変換するか、非数値データを除去してください。
SUMPRODUCT関数を使った複数条件のカウント方法は?
SUMPRODUCT関数を使って複数の条件をカウントするには、各条件を掛け合わせて、その結果をSUMPRODUCT関数に渡します。例えば、特定の条件Aかつ条件Bを満たす場合:
=SUMPRODUCT((条件A) * (条件B))
SUMPRODUCT関数の使い方に関する具体的な例は?
例えば、特定の月における特定の営業担当者の売上を集計する場合、以下のように使用できます:
=SUMPRODUCT((MONTH(日付範囲)=指定月) * (担当者範囲="担当者名") * 売上範囲)
このように、SUMPRODUCT関数を使うことで、複雑な条件を一つの数式で実現することができます。