The FunctionValue class is used to pass arguments in and get results from custom functions.

 public class FunctionValue
Public Class FunctionValue
public FunctionValue CustomFunction(IList<FunctionValue> args, Cell currentCell)
{
    StringBuilder result = new StringBuilder("");
    
    // Iterate over the list of FunctionValues passed in
    foreach (FunctionValue arg in args)
        if (arg.Type != FunctionValueType.RANGE)
            result.Append(arg.Value);
    
    // Create a new FunctionValue to return as the result
    return new FunctionValue(result.ToString());
}
Public Function CustomFunction(args As IList(Of FunctionValue), currentCell As Cell) As FunctionValue
	Dim result As New StringBuilder("")

    ' Iterate over the list of FunctionValues passed in
	For Each arg As FunctionValue In args
		If arg.Type <> FunctionValueType.RANGE Then
			result.Append(arg.Value)
		End If
	Next

    ' Create a new FunctionValue to return as the result
	Return New FunctionValue(result.ToString())
End Function

Name

Description

Value

Type

Name

Description

FunctionValue(String)

FunctionValue(Boolean)

Creates a new FunctionValue with the Type set to BOOLEAN
FunctionValue(Double)Creates a new FunctionValue with the Type set to NUMBER
FunctionValue(Range)Creates a new FunctionValue with the Type set to RANGE