【SUMPRODUCT関数】エラーの原因と解決方法

Excelで範囲同士の掛け算や、条件を指定した集計に便利なSUMPRODUCT関数ですが、範囲の指定方法や、条件の記入方法によってエラーが発生します。この記事では、SUMPRODUCT関数のエラーや、結果が0になる場合の解決策を解説しているので、ぜひ参考にしてみください。

スポンサーリンク

SUMPRODUCT関数の基本の使い方

SUMPRODUCT関数は、複数の範囲の対応する要素同士を掛け合わせ、その合計を返します。

たとえば、A列(価格)とB列(個数)をそれぞれ掛け合わせた合計を求めたい場合に使います。

例:=SUMPRODUCT(A2:A4,B2:B4)

この数式は、(100×2)+(300×1)+(200×2)を行い、結果として900を返します。

SUMPRODUCT関数の引数:(配列1, [配列2, …])


💡 ポイント:

第2引数の「配列2」を省略すると、「配列1」と同じ長さの {1;1;1;…} が自動的に補填されます。そのため、配列を1つだけ指定した場合、SUM関数と同じように動作します。

スポンサーリンク

#VALUE!エラーになる場合

【SUMPRODUCT関数】エラーの原因と解決方法

原因: 参照範囲の行数が一致しない

最もよくあるエラーの原因は、掛け合わせる範囲のサイズが異なることです。

SUMPRODUCT関数は、それぞれの配列の対応する要素同士を掛け合わせるため、範囲の行数が一致しないと計算できません。

【SUMPRODUCT関数】エラーの原因と解決方法

解決方法:参照範囲の行数を一致させる

この問題を解決するには、すべての引数で同じサイズの範囲を指定します。

例:=SUMPRODUCT(A2:A4,B2:B4)

このように、すべての範囲をA2:A4B2:B4のように同じ行数に合わせることで、正しく計算を行えるようになります。

スポンサーリンク

#N/Aエラーになる場合

【SUMPRODUCT関数】エラーの原因と解決方法

原因: 参照元の範囲にエラーがある

掛け合わせる範囲にエラー値が含まれていると、その結果もエラーになります。

【SUMPRODUCT関数】エラーの原因と解決方法

解決方法:エラー値を0にする

この問題を解決するには、IFERROR関数を使って、範囲のエラー値を0に変換します。

例:=SUMPRODUCT(IFERROR(A2:A4,0),B2:B4)

💡 ポイント: Excelの古いバージョンでは、数式を確定する際にCtrlShift + Enterを押す必要があります。

スポンサーリンク

結果が0になる場合

SUMPRODUCT関数で条件式を使ったとき、計算結果が0になってしまうことがあります。これは、特にExcelでよく起こる現象です。

【SUMPRODUCT関数】エラーの原因と解決方法

原因:論理値と数値の掛け算

A2:A4="野菜": この条件式は、{TRUE; FALSE; TRUE}という配列を返します。

Excelは、この論理値の配列数値の配列を直接掛け合わせることができず、0になります。

【SUMPRODUCT関数】エラーの原因と解決方法

解決方法:*1で数値に変換する

この問題を解決するには、次のように、条件式の後ろに*1をつけます。

例:=SUMPRODUCT((A2:A4="野菜")*1,B2:B4)

これにより{TRUE; FALSE; TRUE}{1; 0; 1}に変換され、正しく計算を行えるようになります。

タイトルとURLをコピーしました