Class AverageIf
java.lang.Object
org.apache.poi.ss.formula.functions.AverageIf
- All Implemented Interfaces:
FreeRefFunction
Handler for singular AverageIf which has different operand handling than
the generic AverageIfs version.
-
Field Summary
Fields -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected ValueEvalaggregateMatchingCells(org.apache.poi.ss.formula.functions.Baseifs.Aggregator aggregator, AreaEval sumRange, AreaEval testRange, org.apache.poi.ss.formula.functions.CountUtils.I_MatchPredicate mp) protected static AreaEvalconvertRangeArg(ValueEval eval) protected org.apache.poi.ss.formula.functions.Baseifs.Aggregatorevaluate(ValueEval[] args, OperationEvaluationContext ec) protected booleanImplementations must be stateless.
-
Field Details
-
instance
-
-
Constructor Details
-
AverageIf
public AverageIf()
-
-
Method Details
-
evaluate
- Specified by:
evaluatein interfaceFreeRefFunction- Parameters:
args- the pre-evaluated arguments for this function. args is nevernull, nor are any of its elements.ec- primarily used to identify the source cell containing the formula being evaluated. may also be used to dynamically create reference evals.- Returns:
- never
null. Possibly an instance ofErrorEvalin the case of a specified Excel error (Exceptions are never thrown to represent Excel errors).
-
aggregateMatchingCells
protected ValueEval aggregateMatchingCells(org.apache.poi.ss.formula.functions.Baseifs.Aggregator aggregator, AreaEval sumRange, AreaEval testRange, org.apache.poi.ss.formula.functions.CountUtils.I_MatchPredicate mp) throws EvaluationException - Throws:
EvaluationException
-
hasInitialRange
protected boolean hasInitialRange()Implementations must be stateless.- Returns:
- true if there should be a range argument before the criteria pairs
-
createAggregator
protected org.apache.poi.ss.formula.functions.Baseifs.Aggregator createAggregator() -
convertRangeArg
- Throws:
EvaluationException
-