IValueOfFormula

Defines the public contract for the ValueOfFormula class, exposing validation, converted formula output, failure diagnostics, and lookup metadata for VALUE_OF custom expressions. Implementations validate VALUE_OF expressions from the dictionary and resolve sheet names and column indices for downstream consumers.

Conversion

ConvertedFormula #

Retrieve the converted VALUE_OF expression ready for workbook usage

Signature:

Public Property Get ConvertedFormula() As String: End Property

Converted formula output and validation status. Returns the string representation with sheet name and column indices resolved. Returns vbNullString when the formula is invalid.

Returns: String. Converted VALUE_OF expression.


Valid #

Report whether the VALUE_OF formula parsed successfully

Signature:

Public Property Get Valid() As Boolean: End Property

Implementations perform syntax checks and dictionary lookups before returning True. Returns False when any validation step fails.

Returns: Boolean. True when all checks passed.


FailureReason #

Provide the human-readable reason describing the failure

Signature:

Public Property Get FailureReason() As String: End Property

Returns a diagnostic message explaining why parsing or validation failed. Returns vbNullString when the formula is valid.

Returns: String. Explanation of the failure.


LookupMetadata

LookupSheetName #

Expose the resolved worksheet hosting the lookup table

Signature:

Public Property Get LookupSheetName() As String: End Property

Resolved sheet name and column indices for lookup operations. Returns the name of the worksheet containing the variable referenced by the VALUE_OF expression. Returns vbNullString when unavailable.

Returns: String. Sheet name.


LookupColumnIndex #

Return the column index used for the lookup key

Signature:

Public Property Get LookupColumnIndex() As Long: End Property

Indicates the column position within the lookup table that holds the key values. Returns zero when not resolved.

Returns: Long. Column index.


ValueColumnIndex #

Return the column index providing the matched value

Signature:

Public Property Get ValueColumnIndex() As Long: End Property

Indicates the column position within the lookup table that holds the result values. Returns zero when not resolved.

Returns: Long. Column index.