Skip to content
thethinker990 edited this page Feb 17, 2024 · 14 revisions

The Excel-DNA IntelliSense extension provides in-sheet IntelliSense for user-defined functions created in Excel-DNA add-ins, VBA Workbooks and .xla add-ins, and other native code .xll add-ins.

This page provides simple instructions for getting started and testing the IntelliSense feature for Excel-DNA add-ins and VBA-based functions. Detailed usage instructions including advanced features can be found on the more detailed Usage Instructions page.

For Excel-DNA add-ins (v0.32 and later)

Your C# functions might look like this one:

[ExcelFunction("Returns the answer")]
public static object MyFunction( [ExcelArgument("The unimportant input")] object input )
{
    return 42;
}
  • Ensure that descriptions are provided in the [ExcelFunction] and [ExcelArgument] attributes for your function (they should already display in Excel's Function Arguments dialog).
  • Download and open the ExcelDna.IntelliSense.xll add-in from the Releases page.
  • Optionally install the IntelliSense add-in - press Alt+t, i in Excel to open the add-ins dialog.

For VBA-based functions

Suppose you have VBA code like this:

Function MyVbaFunction(FirstArg, SndArg)
    MyVbaFunction = FirstArg + SndArg
End Function

Function MyOtherFunc()
    MyOtherFunc = 7
End Function
  • Create a new Worksheet with the name "_IntelliSense_". This worksheet must be the very last worksheet. (It can be made hidden later.)
  • Fill in the worksheet as follows (the first cell must be exactly "FunctionInfo" and the other rows are the names and descriptions):
A B C D E F G H
1 FunctionInfo 1.0
2 MyVbaFunction Returns the best answers http://www.google.com FirstArg The first Argument SndArg The Second Argument
3 MyOtherFunc Also returns a value
  • Download and open the ExcelDna.IntelliSense.xll add-in from the Releases page.
  • Optionally install the IntelliSense add-in - press Alt+t, i in Excel to open the add-ins dialog.