View Single Post
  #2   Report Post  
Posted to microsoft.public.excel.programming
Chip Pearson Chip Pearson is offline
external usenet poster
 
Posts: 7,247
Default Call Add-In Macro from VBA

There are two ways to do this. The first is with the Run method. Use
something like

Application.Run "AddinName.xla!MacroName"

The second is to reference the addin. First of all, you should give your
add-in a meaningful project name. Open your add-in in the VBA Editor, go to
the Tools menu, and choose "VBA Project Properties". In that dialog, change
the name of the project from "VBAProject" to something meaningful. Save the
Add-In.

Then open the workbook from which you want to call the macro in the add-in.
Go to the Tools menu, choose References, and in the list find the Project
Name (not the workbook name) that you change in the previous step. Put a
check next to that project item. Then, once the reference is established
from the workbook to the add-in, you can call the macro in the add-in by
simply using its name.

Macro1


--
Cordially,
Chip Pearson
Microsoft MVP - Excel
Pearson Software Consulting, LLC
www.cpearson.com
(email address is on the web site)




"WCM" wrote in message
...
I created a simple add-in that contains one module (module1) and that
module1
contains a simple macro (macro1). I posted that add-in to a file folder on
my
desktop and then added it to my Excel Application. So, if I look in the VB
Editor I can see the new .xla as a separate project in every Excel
Workbook I
open.

QUESTION:
I can attach that .xla macro1 to a toolbar command icon (and it works). I
can also attach it to a simple Excel 'Button' and that works, too.

But when I insert a VB command button into a worksheet, and then add a
simple procedure to the click event, I cannot get the .xla macro to run.
What
is the proper syntax? The following (or any other longer syntax I use)
doesn't work:

Private Sub CommandButton1_Click()
Macro1
End Sub

Thanks,
wcm