Class Sumifs

  • All Implemented Interfaces:
    FreeRefFunction

    public final class Sumifs
    extends Object
    Implementation for the Excel function SUMIFS

    Syntax :

    SUMIFS ( sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ...)

    • sum_range Required. One or more cells to sum, including numbers or names, ranges, or cell references that contain numbers. Blank and text values are ignored.
    • criteria1_range Required. The first range in which to evaluate the associated criteria.
    • criteria1 Required. The criteria in the form of a number, expression, cell reference, or text that define which cells in the criteria_range1 argument will be added
    • criteria_range2, criteria2, ... Optional. Additional ranges and their associated criteria. Up to 127 range/criteria pairs are allowed.
    • Constructor Detail

      • Sumifs

        public Sumifs()
    • Method Detail

      • hasInitialRange

        protected boolean hasInitialRange()
        https://support.office.com/en-us/article/SUMIFS-function-c9e748f5-7ea7-455d-9406-611cebce642b COUNTIFS(sum_range, criteria_range1, criteria1, [criteria_range2, criteria2], ... need at least 3 arguments and need to have an odd number of arguments (sum-range plus x*(criteria_range, criteria))
        Returns:
        true if there should be a range argument before the criteria pairs
      • createAggregator

        protected org.apache.poi.ss.formula.functions.Baseifs.Aggregator createAggregator()
      • evaluate

        public ValueEval evaluate​(ValueEval[] args,
                                  OperationEvaluationContext ec)
        Specified by:
        evaluate in interface FreeRefFunction
        Parameters:
        args - the pre-evaluated arguments for this function. args is never null, 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 of ErrorEval in the case of a specified Excel error (Exceptions are never thrown to represent Excel errors).