OnAction macro in another wb

D

Desert Piranha

Hi all,

I put some command bar code into my Add-In, The OnAction is to call a
Macro Named "aTest".
The twist is that the macro is not physically in the Add-In. It is in
various workbooks,
but the macro name is always "aTest"

I'm trying to call the macro with a variable (active workbook) &
"aTest".

some stuff tried:
With .Add(temporary:=True)
..Caption = "aTest"
'.OnAction = ThisWorkbook.Name & "!aTest"
'.OnAction = "ActiveWorkbook.Name" & "!aTest"
'.OnAction = ActiveWorkbook & "!aTest"
'.OnAction = "ActiveWorkbook.Name & '!aTest'"
'.OnAction = "!aTest"
'.OnAction = ActiveWorkbook.Name & ".xls" & "!aTest"
'.OnAction = "aTest"
End With

All the other code works fine,
and if i put the code into the same workbook as the macro it works fine
with:
'.OnAction = ThisWorkbook.Name & "!aTest"
 
D

Dave Peterson

Untested.

Maybe have your .onaction point to a macro that's in ThisWorkbook.

..onaction = "'" & thisworkbook.name & "'!RunATest"

Then RunATest could do the real work based on the active workbook's name.

Option Explicit
sub RunATest()
application.run "'" & activeworkbook.name & "'!ATest"
end sub
 
D

Desert Piranha

Dave said:
Untested.

Maybe have your .onaction point to a macro that's in ThisWorkbook.

..onaction = "'" & thisworkbook.name & "'!RunATest"

Then RunATest could do the real work based on the active workbook's
name.

Option Explicit
sub RunATest()
application.run "'" & activeworkbook.name & "'!ATest"
end subHi Dave,

Very masterfull, works great. Thx Very much.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Top