クイックナビゲーション
SUMPRODUCT関数
概要
SUMPRODUCT関数は、対応する配列の要素を乗算し、その結果を合計します。配列同士の積の合計を計算する強力な関数で、条件付き計算や複数条件での集計にも活用できます。
構文
SUMPRODUCT(array1, [array2], [array3], ...)
パラメータ
| パラメータ | タイプ | 必須 | 説明 |
|---|---|---|---|
| array1 | 配列 |
はい | 計算の基盤となる最初の配列範囲。数値、範囲、または配列式を指定できます。 |
| [array2], [array3], ... | 配列 |
いいえ | 対応する追加配列。array1と同じサイズである必要があります。 |
SUMPRODUCT関数の使用
SUMPRODUCTは配列の要素を対応位置で乗算し、全ての積を合計します。配列サイズが一致しない場合は#VALUE!エラーが発生します。数値以外の値は自動的に0として扱われます。条件付き計算では、ブール値(TRUE/FALSE)を1/0として処理し、フィルタリング効果を発揮します。
SUMPRODUCTの一般的な例
基本的な積の合計
=SUMPRODUCT(C2:C5,D2:D5)
C列(単価)×D列(数量)の各行積を合計し、総売上額を計算します。長い式 =C2*D2+C3*D3+C4*D4+C5*D5 と同等の結果を得られます。
複数条件での集計
=SUMPRODUCT((B2:B9="東")*(C2:C9="チェリー")*D2:D9)
地域が「東」かつ商品が「チェリー」の販売数量のみを合計。条件がTRUE(1)/FALSE(0)として自動フィルタリングされます。
売上と経費の合計(エージェント別)
=SUMPRODUCT(((Table1[売上])+(Table1[経費]))*(Table1[担当者]=B8))
特定担当者の売上+経費を合計計算。テーブル構造化参照を使用した実務例です。
よくある質問
一般的なエラーと解決策
#VALUE!エラー
Cause: 配列のサイズ(行数×列数)が一致しない
Solution: 全ての配列範囲を同一サイズに調整してください。例:C2:C10とD2:D5はエラー。
計算結果が0になる
Cause: 非数値データが含まれている
Solution: データ確認後、必要に応じて数値変換関数を併用してください。
予期しない大きな数値
Cause: 完全列参照による全行処理
Solution: 具体的な範囲(例:A2:A1000)を指定してください。
注記
- Excel 2007以降で利用可能
- ブール演算により条件付き合計を実現(SUMIFSの代替)
- 算術演算子(*,/,+,-)を直接使用可能:SUMPRODUCT((A1:A10)+(B1:B10))
- 配列式(Ctrl+Shift+Enter)不要で簡潔
- パフォーマンス重視時は範囲指定を最適化
互換性
利用可能: Excel 2007, Excel 2010, Excel 2013, Excel 2016, Excel 2019, Excel 2021, Microsoft 365
利用不可: Excel 2003以前
コンテンツ最終レビュー: December 9, 2025
更新頻度: 必要に応じて
テスト済みExcelバージョン: Excel 2007+