Excel-DNA

This is an open source project that lets you create native (.xll) add-ins for Excel using C#, VB.Net or F#.
The Excel C API is not directly accessible from .NET code but the Excel-DNA runtime allows managed assemblies to integrate with this low-level Windows API.
This lets you create high performance user-defined functions and requires no installation or registration
Allowing a user to install and run on a machine without admin access can be extremely useful.


Useful Links

link - docs.excel-dna.net/
link - nuget.org/packages/Excel-Dna
link - nuget.org/packages/ExcelDna.Integration/
link - github.com/Excel-DNA/ExcelDna
link - groups.google.com/g/exceldna
link - youtube.com/watch?v=UEIO2Q8HyD8
link - youtube.com/watch?v=0-Rb0StiJgM
link - bitbucket.org/andysprague44/excel-dna-examples/src/master/


Interfaces

The Excel C API was first introduced in Excel '95 and has continuously evolved with new versions of Excel.
Excel-DNA uses the C API to integrate with Excel, though
Excel-DNA can also use the COM Automation interfaces where needed.




Registry Keys

Need to add a registry key
HKCU\Software\Microsoft\Office\12.0\Excel\Options\ OPEN1 - /R "MyXLL.dll"
If the add-in is not in the default add-ins folder then the full path must be provided


The Excel-DNA runtime contains a small loader (the .XLL) that loads the .NET runtime, then checks the configuration (.dna) file and accordingly loads the managed assembly.
The managed assemblies are then inspected using the .NET Reflection API and the appropriate methods are registered.



© 2021 Better Solutions Limited. All Rights Reserved. © 2021 Better Solutions Limited TopPrevNext