The IFunction interface is used to implement custom Excel functions in .NET to be passed in to ExcelWriter Application

public interface IFunction
{
    ComputationResult CustomFunction(IList<ComputationResult> args, Cell currentCell);
}
Public Interface IFunction
    Function CustomFunction(IList<ComputationResult> args, Cell currentCell) As ComputationResult
End Interface
class Concat : IFunction
{
    public ComputationResult CustomFunction(IList<ComputationResult> args, Cell currentCell)
    {
        StringBuilder result = new StringBuilder("");


        foreach (ComputationResult arg in args)
            if (arg.Type != ComputationResultType.RANGE)
                result.Append(arg);


        return new ComputationResult(result.ToString());
    }
}
Class Concat
	Implements IFunction
	Public Function CustomFunction(args As IList(Of ComputationResult), currentCell As Cell) As ComputationResult
		Dim result As New StringBuilder("")
		For Each arg As ComputationResult In args
			If arg.Type <> ComputationResultType.RANGE Then
				result.Append(arg)
			End If
		Next
		Return New ComputationResult(result.ToString())
	End Function
End Class

Name

Description

CustomFunction(IList<ComputationResult>,Cell)