## org.apache.poi.ss.formula.functions
Class Sumif

    java.lang.Object
      org.apache.poi.ss.formula.functions.Sumif

All Implemented Interfaces:
  Function, Function2Arg, Function3Arg

    public final class Sumif

extends java.lang.Object

Implementation for the Excel function SUMIF

Syntax :
SUMIF ( range, criteria, sum_range )

range | The range over which criteria is applied. Also used for addend values when the third parameter is not present
criteria | The value or expression used to filter rows from range
sum_range | Locates the top-left corner of the corresponding range of addends - values to be added (after being selected by the criteria)

Author:
  Josh Micich

Constructor Summary
`Sumif()`

Method Summary
`ValueEval` `evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1)` see `Function.evaluate(ValueEval[], int, int)`
`ValueEval` `evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1, ValueEval arg2)` see `Function.evaluate(ValueEval[], int, int)`
`ValueEval` `evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)`

Methods inherited from class java.lang.Object
`clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

Constructor Detail

### Sumif

    public Sumif()

Method Detail

### evaluate

    public ValueEval evaluate(int srcRowIndex,
                              int srcColumnIndex,
                              ValueEval arg0,
                              ValueEval arg1)

  Description copied from interface: `Function2Arg`
  see `Function.evaluate(ValueEval[], int, int)`

### evaluate

    public ValueEval evaluate(int srcRowIndex,
                              int srcColumnIndex,
                              ValueEval arg0,
                              ValueEval arg1,
                              ValueEval arg2)

  Description copied from interface: `Function3Arg`
  see `Function.evaluate(ValueEval[], int, int)`

### evaluate

    public final ValueEval evaluate(ValueEval[] args,
                                    int srcRowIndex,
                                    int srcColumnIndex)

  Specified by:
    `evaluate` in interface `Function`
  Parameters:
    `args` - the evaluated function arguments. Empty values are represented with `BlankEval` or `MissingArgEval`, never `null`.
    `srcRowIndex` - row index of the cell containing the formula under evaluation
    `srcColumnIndex` - column index of the cell containing the formula under evaluation
  Returns:
    The evaluated result, possibly an `ErrorEval`, never `null`. Note - Excel uses the error code #NUM! instead of IEEE NaN, so when numeric functions evaluate to `Double.NaN` be sure to translate the result to `ErrorEval.NUM_ERROR`.

Copyright 2012 The Apache Software Foundation or its licensors, as applicable.