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

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

All Implemented Interfaces:
  Function

    public class Subtotal

extends java.lang.Object
implements Function

Implementation for the Excel function SUBTOTAL

Syntax :
SUBTOTAL ( functionCode, ref1, ref2 ... )

functionCode | (1-11) Selects the underlying aggregate function to be used (see table below)
ref1, ref2 ... | Arguments to be passed to the underlying aggregate function

functionCode | Aggregate Function
--- | ---
1 | AVERAGE
2 | COUNT
3 | COUNTA
4 | MAX
5 | MIN
6 | PRODUCT
7 | STDEV
8 | STDEVP *
9 | SUM
10 | VAR *
11 | VARP *
101-111 | *

* Not implemented in POI yet. Functions 101-111 are the same as functions 1-11 but with the option 'ignore hidden values'.

Author:
  Paul Tomlin < pault at bulk sms dot com >

Constructor Summary
`Subtotal()`

Method Summary
`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

### Subtotal

    public Subtotal()

Method Detail

### evaluate

    public 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.