XLL+ Class Library (7.0)

IntelliSense

Excel-DNA IntelliSense

As part of the open-source Excel-DNA project (https://github.com/Excel-DNA) an IntelliSense add-in is available, which "adds in-sheet IntelliSense for Excel UDFs, ... through an independently deployed add-in". During the help build process, XLL+ generates a file <Addin>.IntelliSense.xml. To make use of this file, follow these steps:

  1. Deliver the <Addin>.IntelliSense.xml file to the deployment directory, alongside <Addin>.xll and <Addin>.chm.
  2. Download the stand-alone Excel-DNA IntelliSense add-in, ExcelDna.IntelliSense.xll or ExcelDna.IntelliSense64.xll, from https://github.com/Excel-DNA/IntelliSense/releases. Be sure to use the correct version for the version of Excel you intend to support. For 32-bit Excel, use ExcelDna.IntelliSense.xll; for 64-bit Excel, use ExcelDna.IntelliSense64.xll.
  3. Register the IntelliSense XLL as an add-in.

Example

If a simple add-in function MyAdd() has two arguments, x and y, it might appear in the Excel Formula Wizard like this:

With IntelliSense loaded, the function help will appear alongside the list of suggested functions, thus:

When the formula is being edited, context-sensitive help will appear as a popup:

Debugging

If you are debugging C++ code using Visual Studio, and the Excel-DNA IntelliSense add-in ExcelDna.IntelliSense.xll is loaded, you may run into an unhandled exception during Excel close-down. This appears to be a side-effect of a loader-locking problem between managed and unmanaged DLLs. You can avoid it at this time by ensuring that ExcelDna.IntelliSense.xll is not automatically loaded when you are debugging XLL+ add-ins.

Next: Exceptions >>