Class AverageIf
- java.lang.Object
-
- org.apache.poi.ss.formula.functions.AverageIf
-
- All Implemented Interfaces:
FreeRefFunction
public class AverageIf extends Object
Handler for singular AverageIf which has different operand handling than the generic AverageIfs version.
-
-
Field Summary
Fields Modifier and Type Field Description static FreeRefFunctioninstance
-
Constructor Summary
Constructors Constructor Description AverageIf()
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description protected 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.AggregatorcreateAggregator()ValueEvalevaluate(ValueEval[] args, OperationEvaluationContext ec)protected booleanhasInitialRange()Implementations must be stateless.
-
-
-
Field Detail
-
instance
public static final FreeRefFunction instance
-
-
Method Detail
-
evaluate
public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec)
- 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
protected static AreaEval convertRangeArg(ValueEval eval) throws EvaluationException
- Throws:
EvaluationException
-
-