ExcelBanter

ExcelBanter (https://www.excelbanter.com/)
-   Excel Programming (https://www.excelbanter.com/excel-programming/)
-   -   Calling macro from a different addin (https://www.excelbanter.com/excel-programming/394669-calling-macro-different-addin.html)

Nayan

Calling macro from a different addin
 
Hello,

(Env: Excel 2003 on windows xp professinal) .

I have 2 addins, Caller.xla and Source.xla

I am building a menu from Caller.xla and 'onaction' command of menu is
calling a method from Source.xla

-------code in
Caller.xla----------------------------------------------------------------
Set MainMenu = Application.CommandBars(1).Controls("myControl")
Set SubMenu = MainMenu .Controls.Add(msoControlButton, 1, , , True)

With SubMenu
.caption = "myCaption"
.Tag = "myTag"
.BeginGroup = True
.OnAction = "Source.xla!MyModule.MyMethod"
End With
-----------------------------------------------------------------------------------------------
The issue is that Excel is looking for Source.xla in a path set in "Default
File location" property set by ToolsOptionsGeneral tab.

If I set the path in this field to point to source.xla the code works fine.
Without setting this path when I click on this menu "MyCaption", I get a
messge that the Excel could not find the macro.

I have a situation where I can not set the Default path to point to
Source.xla.

In other word the question is, From a custom menu, how do I call a macro
from a different addin without any additinal settings.

Thanks in advance

Nayan


JW[_2_]

Calling macro from a different addin
 
Simple. Just include the complete path to Source.xla in the OnAction
portion of the code.
..OnAction = "C:\Something\Source.xla!MyModule.MyMethod"

Nayan wrote:
Hello,

(Env: Excel 2003 on windows xp professinal) .

I have 2 addins, Caller.xla and Source.xla

I am building a menu from Caller.xla and 'onaction' command of menu is
calling a method from Source.xla

-------code in
Caller.xla----------------------------------------------------------------
Set MainMenu = Application.CommandBars(1).Controls("myControl")
Set SubMenu = MainMenu .Controls.Add(msoControlButton, 1, , , True)

With SubMenu
.caption = "myCaption"
.Tag = "myTag"
.BeginGroup = True
.OnAction = "Source.xla!MyModule.MyMethod"
End With
-----------------------------------------------------------------------------------------------
The issue is that Excel is looking for Source.xla in a path set in "Default
File location" property set by ToolsOptionsGeneral tab.

If I set the path in this field to point to source.xla the code works fine.
Without setting this path when I click on this menu "MyCaption", I get a
messge that the Excel could not find the macro.

I have a situation where I can not set the Default path to point to
Source.xla.

In other word the question is, From a custom menu, how do I call a macro
from a different addin without any additinal settings.

Thanks in advance

Nayan



Nayan

Calling macro from a different addin
 
Thanks JW. Its working. It never occured to me to qualify the Addin with its
path.

Thanks again.

Nayan

"JW" wrote:

Simple. Just include the complete path to Source.xla in the OnAction
portion of the code.
..OnAction = "C:\Something\Source.xla!MyModule.MyMethod"

Nayan wrote:
Hello,

(Env: Excel 2003 on windows xp professinal) .

I have 2 addins, Caller.xla and Source.xla

I am building a menu from Caller.xla and 'onaction' command of menu is
calling a method from Source.xla

-------code in
Caller.xla----------------------------------------------------------------
Set MainMenu = Application.CommandBars(1).Controls("myControl")
Set SubMenu = MainMenu .Controls.Add(msoControlButton, 1, , , True)

With SubMenu
.caption = "myCaption"
.Tag = "myTag"
.BeginGroup = True
.OnAction = "Source.xla!MyModule.MyMethod"
End With
-----------------------------------------------------------------------------------------------
The issue is that Excel is looking for Source.xla in a path set in "Default
File location" property set by ToolsOptionsGeneral tab.

If I set the path in this field to point to source.xla the code works fine.
Without setting this path when I click on this menu "MyCaption", I get a
messge that the Excel could not find the macro.

I have a situation where I can not set the Default path to point to
Source.xla.

In other word the question is, From a custom menu, how do I call a macro
from a different addin without any additinal settings.

Thanks in advance

Nayan





All times are GMT +1. The time now is 11:32 PM.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
ExcelBanter.com