I am using ArcGIS Desktop 10.0.

I need a way to execute an ArcGis-Addin (vb.net) from a MS-Access database form (VBA).

The problem is that there is no ESRI.ArcGIS.Desktop.Addin reference in VBA and the "pItem.Execute" method with the "pCmdBars.Find(pUID)" does not work with my Addin-Button.

I want to open the ArcMap.mxd file and perform a selection that shows the spatial data of my MS-Access database query.

The rest is not a problem (maybe!).

  • Just to clear the question up, do you want to add a "button" inside Access that fires up ArcMap and performs some spatial selection?
    – MLowry
    Commented Apr 24, 2012 at 19:07

1 Answer 1


For VBA to be able to interop with .NET types they need to be made COM-visible which involves adding keys to the registry. The ArcGIS 10 add-in framework was designed to simplify the deployment of certain types of customizations that ESRI created .NET classes for, eliminating the need for registering them with COM.

If you need COM interop support (which you do if you want to use them from VBA), then you need to write a traditional COM component, not an add-in, and make the types you need to use from VBA COM-visible.

This article suggests how you may be able to manually convert an add-in to a COM component: Converting an ArcGIS Desktop add-in to an ArcGIS custom component

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.