This toolkit contains tools, a runtime library, samples and documentation to help with the development of COM modules and .NET assemblies that wrap Excel XLL add-ins. The add-in functions in the library are available as COM and .NET methods to client programs that use the wrapper modules.

The wrapper objects can be used by clients written in any development environment that supports COM or .NET, including C++, Java, C#, Visual Basic and VBA.

Each add-in library is wrapped in a single class, which has one public method for each add-in function. For example, an XLL add-in named MatrixTools.xll, containing 3 methods, might produce a .NET class such as:

CopyC#
class MatrixTools
{
    public bool MatrixIsSkewSymmetric(double[,] M);
    public double[,] LUDecomposition(double[,] A, double[,] L, double[,] U);
    public double EuroDateDiff(DateTime Start, DateTime End);
}

The wrapped methods can have strongly-typed signatures that are more precise than the Excel add-in functions that they wrap. In the examples above:

  • Inputs can be dates - rather than just the numbers used in Excel.
  • Return types can be specified.
  • Where an add-in function might return "#VALUE!" for an error, the wrapper function can instead throw an exception.

In This Section

Getting Started
A guide to get you started using XLL Wrapper Generator.
Walkthroughs
Walkthroughs that show you how to create, build and test wrapper libraries.
Samples
Sample applications.
Information files
Information files are used to control the wrapper code generator. An information file can be used to override and fine-tune the signatures and behavior of the generated wrapper functions.
Tools
References for the XLL wrapper command-line tools.

See Also