Features

XLL+ is a toolkit to aid C/C++ programmers in the construction of Excel add-in libraries. Among its features:

  • Creates complete Visual Studio projects, ready to compile and run.
  • Function Wizard helps you write Excel add-in functions and generates most of the code for you.
  • Powerful class library contains C++ classes which hide all the complexity of the Excel SDK, and make it very easy to write powerful, safe add-in functions, and to write them very fast.
  • Extensive documentation, including reference guide, tutorial, walkthroughs and interactive help.
  • Many complete sample projects, demonstrating XLL+ features.
  • Supports all versions of Excel, including both 32-bit and 64-bit versions.
  • Fully integrated with Microsoft Visual Studio 2022, 2019, 2017, 2015, 2013, 2012, 2010, 2008 and 2005.
  • Generates an Excel help project from your source code and comments.
  • No Visual Basic is required.
  • No knowledge of the Excel SDK is required.

AppWizard

The AppWizard creates a complete project under Microsoft Developer Studio, ready to be built and debugged.

You can decide whether to include various optional features, such as MFC (Microsoft Foundation Classes) integration, Unicode character set, and version information.

See the online help for more information

Function Wizard

The Function Wizard is a Visual Studio add-in. It will write the skeletons of functions for you and make sure that they are properly registered and described to Excel. Later, if you add to or change the function's arguments, you can use the Function Wizard to keep the registration details in sync.

The Function Wizard also generates blocks of code that check all the function's inputs for consistency, and extract them into useful variables, such as STL collections.

See the User Guide for more information

XLL Add-ins Window

The XLL Add-ins window is a tool window within Visual Studio. It displays all the add-in functions in the current C++ source file. You can use it to edit your add-in functions directly, without a popup editor, and you can use it to edit multiple functions at the same time.

Any changes you make will immediately be reflected in your code.

All changes made via the XLL Add-ins window can be reversed using Undo, just as if you had made them with the editor.

See the User Guide for more information

Class Library

The class library contains a set of C++ objects which hide the complexity of Excel's data interface. In particular, the classes manage all memory issues. A set of virtual functions is provided so that the programmer can write event handlers for the opening, closing or registration of the add-in library.

See the Class Reference for more information

Help for your add-in functions

XLL+ automatically generates a complete CHM help file in Excel help format. This help will be available within Excel to users of your functions. You can add your own content to any function or argument, and you can add your own pages.

See the User Guide for more information

XLL+ Documentation

The XLL+ documentation is integrated into Visual Studio, and contains a huge fund of useful information.

  • Fully integrated into Visual Studio 2022, 2019, 2017, 2015, 2013, 2012, 2010, 2008 and 2005.
  • On-line reference to all classes and functions
  • User guide
  • Tutorials
  • Walkthroughs for important features
  • Example code for all methods

Sample Code

  • Dozens of sample projects are provided to show you how to use all the features of Excel and XLL+
  • Walkthroughs take you quickly through the standard features of Excel add-ins
  • There are also smaller sample functions to illustrate all XLL+ methods and classes

See the full list of samples

Supports all versions of Excel

Binaries built with XLL+ run under all versions of Excel on the PC platform:

  • Office 365 (64-bit and 32-bit)
  • Excel 2021 (64-bit and 32-bit)
  • Excel 2019 (64-bit and 32-bit)
  • Excel 2016 (64-bit and 32-bit)
  • Excel 2013 (64-bit and 32-bit)
  • Excel 2010 (64-bit and 32-bit)
  • Excel 2010 (32-bit)
  • Excel 2007
  • Excel 2003
  • Excel 2002/XP
  • Excel 2000
  • Excel 97
  • Excel 95

Supports Microsoft Visual Studio

Versions of XLL+ are available for the following versions of Visual Studio:

  • Visual Studio 2022
  • Visual Studio 2019
  • Visual Studio 2017
  • Visual Studio 2015
  • Visual Studio 2013
  • Visual Studio 2012
  • Visual Studio 2010
  • Visual Studio 2008
  • Visual Studio 2005
  • Visual Studio .NET 2003
  • Visual Studio .NET (2002)
  • Visual Studio 6

Asynchronous functions

Simply by checking a box in the Function Wizard, you can generate all the code to run an add-in function in a background thread.

See the User Guide for more

Object handles

Using our object handle classes, you can use add-in functions to create objects in your code, and expose their properties and methods in Excel. Our simple handle mechanism ensures that the exposed properties are always up to date, and that changes to the objects are reflected in the spreadsheets.

See the User Guide for more

Languages other than English

Our libraries make sure your code works properly in all language versions of Excel. Your XLL can easily be localized so that users see all argument names and help texts in their preferred language.

All the standard error messages returned by the framework can be displayed in the language of the user.

See the User Guide for details

.NET assemblies

XLL+ can import an entire .NET assembly, and automatically generate Excel add-in functions for any public methods or properties.

See the User Guide for more

.NET and COM wrapper libraries

You can generate all the source code for a COM and .NET wrapper library, to expose your XLL add-in to any .NET or COM client language, including VB.NET, VBA, C# & F#. This will let programmers write stand-alone applications, independent of Excel, which can call your XLL add-in functions as normal .NET or COM methods.

See the XLL+ Reference for details

Event model

You can implement event handlers to trap most Excel application events, such as files opening and closing, user input, calculation etc. You don't need to write any COM code: the XLL framework handles all the work.

The framework uses a standard notification event model, and makes it extremely simple to add your own event handlers.

See the User Guide for more information

MFC Support

Libraries can be built using the MFC build, so that they will be fully integrated with the Microsoft Foundation Classes, which makes it easy to use MFC windows and other classes from within your add-in.

See the online help for more

Unicode Support

Libraries can be built using the Unicode character set, so that if you use a language other than English, your code can handle text in the normal way.

See the online help for more