Version

DoesParameterAllowIntermediateResultArray Method

Determines whether the function accepts an intermediate result array created by evaluating a nested function on a per-element basis of an array or region parameter when a single value is expected.
Syntax
protected internal virtual bool DoesParameterAllowIntermediateResultArray( 
   int parameterIndex,
   bool isCreatedFromRegionReference
)

Parameters

parameterIndex
The 0-based index of parameter in which the intermediate array will be passed.
isCreatedFromRegionReference
True if the value which will generate the intermediate result array is a region reference; False if it is a constant array.

Return Value

True to allow intermediate result arrays for the specified parameter; False otherwise.
Remarks

An intermediate result array will be generated when multiple values are specified where a single value is expected. For example, the following formula will generate the value 15: =SUM(10/{1,2}). This is because "10/{1,2}" will result in an intermediate result array of {10/1,10/2}, or {10,5}. Then each element is summed up to result in the value 15. However, the SUM function does not allow intermediate result arrays for region references. So a function such as =SUM(10/D6:E7) will result in a #VALUE! error. Unlike the SUM function, the LOOKUP function allows intermediate result arrays from region references. So a formula like LOOKUP(10,D6:E7*2) will return a correct result if the value 10 can be found in the following intermediate result array when using the normal LOOKUP function logic: {D6*2,E6*2; D7*2,E7*2}. Therefore, SUM would return True from this method only when isCreatedFromRegionReference is False and LOOKUP would return True from this method always (for a parameterIndex value of 1 in this example).

Note: if this function is being called in an array formula, the restrictions are relaxed in the following way: if the function supports intermediate result arrays created from constant array, it will also support intermediate result arrays created from region references, so the isCreatedFromRegionReference value will always be passed in as False.

Requirements

Target Platforms: Android 4.4+, iOS 8+

Development Environments: Visual Studio 2015+, Visual Studio for Mac Preview, Xamarin for Visual Studio 4.2+

See Also