Class Match
- java.lang.Object
-
- org.apache.poi.ss.formula.functions.Match
-
- All Implemented Interfaces:
Function
,Function2Arg
,Function3Arg
public final class Match extends Object
Implementation for the MATCH() Excel function.Syntax:
MATCH(lookup_value, lookup_array, match_type)Returns a 1-based index specifying at what position in the lookup_array the specified lookup_value is found.
Specific matching behaviour can be modified with the optional match_type parameter.
match_type parameter description Value Matching Behaviour 1 (default) find the largest value that is less than or equal to lookup_value. The lookup_array must be in ascending order*. 0 find the first value that is exactly equal to lookup_value. The lookup_array can be in any order. -1 find the smallest value that is greater than or equal to lookup_value. The lookup_array must be in descending order*.
The (ascending) sort order expected by MATCH() is:
numbers (low to high), strings (A to Z), boolean (FALSE to TRUE)
MATCH() ignores all elements in the lookup_array with a different type to the lookup_value. Type conversion of the lookup_array elements is never performed.
-
-
Constructor Summary
Constructors Constructor Description Match()
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description ValueEval
evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1)
ValueEval
evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1, ValueEval arg2)
ValueEval
evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)
-
-
-
Method Detail
-
evaluate
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1)
Description copied from interface:Function2Arg
-
evaluate
public ValueEval evaluate(int srcRowIndex, int srcColumnIndex, ValueEval arg0, ValueEval arg1, ValueEval arg2)
Description copied from interface:Function3Arg
-
evaluate
public final ValueEval evaluate(ValueEval[] args, int srcRowIndex, int srcColumnIndex)
- Specified by:
evaluate
in interfaceFunction
- Parameters:
args
- the evaluated function arguments. Empty values are represented withBlankEval
orMissingArgEval
, nevernull
.srcRowIndex
- row index of the cell containing the formula under evaluationsrcColumnIndex
- column index of the cell containing the formula under evaluation- Returns:
- The evaluated result, possibly an
ErrorEval
, nevernull
. Note - Excel uses the error code #NUM! instead of IEEE NaN, so when numeric functions evaluate toDouble.NaN
be sure to translate the result toErrorEval.NUM_ERROR
.
-
-