Class Sumproduct
- java.lang.Object
-
- org.apache.poi.ss.formula.functions.Sumproduct
-
public final class Sumproduct extends Object implements Function, ArrayMode
Implementation for the Excel function SUMPRODUCTSyntax :
SUMPRODUCT ( array1[, array2[, array3[, ...]]])Parameter descriptions array1, ... arrayN typically area references, possibly cell references or scalar values
Let An(i,j) represent the element in the ith row jth column of the nth array
Assuming each array has the same dimensions (W, H), the result is defined as:
SUMPRODUCT = Σi: 1..H ( Σj: 1..W ( Πn: 1..N An(i,j) ) )The current implementation does not support the more advanced use cases of SUMPRODUCT, including
SUMPRODUCT((B2:B9=B12)*(C2:C9=C12)*D2:D9)
(see example 3 in https://support.microsoft.com/en-us/office/sumproduct-function-16753e75-9f68-4874-94ac-4d2145a2fd2e).
-
-
Constructor Summary
Constructors Constructor Description Sumproduct()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueEval
evaluate(ValueEval[] args, int srcCellRow, int srcCellCol)
-
-
-
Method Detail
-
evaluate
public ValueEval evaluate(ValueEval[] args, int srcCellRow, int srcCellCol)
- Specified by:
evaluate
in interfaceFunction
- Parameters:
args
- the evaluated function arguments. Empty values are represented withBlankEval
orMissingArgEval
, nevernull
.srcCellRow
- row index of the cell containing the formula under evaluationsrcCellCol
- column index of the cell containing the formula under evaluation- Returns:
- The evaluated result, possibly an
ErrorEval
, nevernull
. Note - Excel uses the error code #NUM! instead of IEEE NaN, so when numeric functions evaluate toDouble.NaN
be sure to translate the result toErrorEval.NUM_ERROR
.
-
-