Welcome to the XLL+ User Guide.
This is an on-line guide to building Excel add-ins with the XLL+ toolkit. Through the use of tutorial examples, it shows each of the steps for creating an Excel add-in library.
Quick start | |||
Quick start | A very short introduction to using XLL+ | ||
Getting started | |||
Creating a project | How to create a new MS Developer Studio project for an Excel add-in library | ||
Writing an add-in function | How to use the XLL+ Function Wizard to create an Excel add-in function | ||
Testing your add-in function | How to run and debug your add-in function in Excel | ||
Handling errors | How to return a different data type from a function, depending on whether the function succeeded or failed. | ||
Basic features | |||
Vector arguments | How to read one-dimensional arguments | ||
Modifying an add-in function | How to use the XLL+ Function Wizard to modify an Excel add-in function, and regenerate the code | ||
Optional arguments | How to test for a missing argument, and use a default if it is omitted | ||
XLL Add-ins window | How to use the XLL Add-ins window to edit your add-in functions directly from Visual Studio | ||
Matrix arguments | How to read two-dimensional arguments | ||
Other matrix types | How to use different containers and layouts for two-dimensional data | ||
Array results | How to return one- and two-dimensional results to Excel | ||
String arguments | How to handle string (text) arguments | ||
Value lists | How to handle enumerated (enum) arguments | ||
Upgrading | How to use the Upgrade Wizard to upgrade a project built with a previous version of XLL+; changes required for existing code | ||
Intermediate features | |||
Excel Formula Wizard | How to support the Excel Formula Wizard | ||
Extending the Excel Formula Wizard | How to add drop-down lists and popup windows to the Excel Formula Wizard | ||
Languages other than English | How to display messages in languages other than English | ||
Help | How to generate a help file and link it to Excel's Formula Wizard | ||
Exception handling | How XLL+ handles exceptions, and how to change the default behavior; how to trap C Run-time exceptions; how to raise exceptions in add-in functions | ||
Macro functions | How to write add-in functions that make changes to workbooks | ||
Global objects and data | How to write store global data, share it between threads, and handle initialization and termination | ||
Menus and toolbars | How to add new menus and toolbars to Excel so that users can invoke your add-in functions | ||
Utility classes | A range of helpful classes for dates, cell replacement and serialization | ||
Using MFC | How to use the Microsoft Foundation Classes from within an XLL | ||
Using .NET | How to use .NET and the Common Language Runtime from within an XLL | ||
Importing .NET Assemblies | Automatically generate a set of add-in functions as wrappers for any or all of the methods in a .NET assembly. | ||
Sized result arrays | How to return an array result that exactly fits the range from which it was called | ||
Advanced features | |||
Handling events | How to write event handlers that will automatically run code when events (such as a workbook opening or recalculating) occur in Excel | ||
Volatile functions | How to write add-in functions that will be recalculated whenever Excel recalculates a worksheet | ||
Extended types | How to add new scalar data types, such as dates or enumerations | ||
Function extensions | How to add new features and generated code to your functions | ||
Object handles | How to expose objects in spreadsheets, using "handles" | ||
Groups | How to reduce the number of arguments to a function, by grouping arguments together | ||
Choices | How to allow an argument to have multiple valid formats, and use only one of them. | ||
Favorites | How to save frequently used arguments to your favorites list, for re-use in other functions and libraries | ||
International support | How to support users who prefer languages other than your own | ||
Asynchronous functions | How to do work in background threads, and have Excel update when you are ready to supply it with new data | ||
Logging | How to use the XLL+ logging framework to write diagnostic and other information to log files |
Note: In the tutorial steps, you are guided in building an add-in called Tutorial1. You can find all the code for this project, and all the other tutorial projects, under the Samples sub-directory of your XLL+ installation.