IFormulaData

Defines the public contract for the FormulaData class, exposing membership lookups for allowed Excel functions, permitted separator characters, and grouped-formula metadata used by the Formulas parser.

Lookups

SpecialCharacterIncludes #

Test whether a character is part of the allowed separators list

Signature:

Public Function SpecialCharacterIncludes(ByVal specialChar As String) As Boolean

Membership tests against cached function, character, and grouped-formula registries. Implementations check the in-memory character cache built from the T_ascii table. Returns False for empty input without accessing the cache.

Parameters:

  • specialChar: String. Character to inspect.

Returns: Boolean. True when the character exists in the lookup.


ExcelFormulasIncludes #

Test whether an Excel function is whitelisted

Signature:

Public Function ExcelFormulasIncludes(ByVal ExcelFormula As String) As Boolean

Implementations normalise the input to uppercase and check the in-memory function cache built from the T_XlsFonctions table. Returns False for empty input.

Parameters:

  • ExcelFormula: String. Function name to inspect.

Returns: Boolean. True when the function exists in the lookup.


IsGroupFunction #

Determine whether a setup function is registered as grouped

Signature:

Public Function IsGroupFunction(ByVal functionName As String) As Boolean

Implementations scan the grouped-formula registry for a matching token. Grouped functions receive special handling during formula evaluation and produce aggregated Excel expressions.

Parameters:

  • functionName: String. Grouped token to inspect.

Returns: Boolean. True when the function is recognised for grouped parsing.


GroupAggregator #

Retrieve the Excel aggregator mapped to the grouped token

Signature:

Public Function GroupAggregator(ByVal functionName As String) As String

Returns the canonical Excel aggregation function (e.g. "SUMIFS", "AVERAGE") linked to the provided grouped token. Returns vbNullString when the token is not registered.

Parameters:

  • functionName: String. Grouped token to translate.

Returns: String. Aggregator name or vbNullString when the token is unknown.


GroupUsesNativeFunction #

*Indicate whether the grouped token should emit a native Excel IFS function

Signature:

Public Function GroupUsesNativeFunction(ByVal functionName As String) As Boolean

When True, the Formulas class emits the native *IFS aggregator (e.g. SUMIFS) directly rather than wrapping it in an IF block.

Parameters:

  • functionName: String. Grouped token to inspect.

Returns: Boolean. True when the grouped function maps directly to a native Excel *IFS function.