Vba 如何调用单个模块中包含的excel宏(不在工作表中)

Vba 如何调用单个模块中包含的excel宏(不在工作表中),vba,tcl,Vba,Tcl,使用以下代码从工作簿中运行宏: set app [::tcom::ref createobject Excel.Application] [$app Workbooks] Open c:/MyMacroBook.xlsx $app Run Macro1 但当不同模块中有多个同名宏时,如何调用 e、 g.Module1具有Macro1,而Module2具有Macro1 尝试了以下操作,但无效: set app [::tcom::ref createobject Excel.Application

使用以下代码从工作簿中运行宏:

set app [::tcom::ref createobject Excel.Application]
[$app Workbooks] Open c:/MyMacroBook.xlsx
$app Run Macro1
但当不同模块中有多个同名宏时,如何调用

e、 g.
Module1
具有
Macro1
,而
Module2
具有
Macro1

尝试了以下操作,但无效:

set app [::tcom::ref createobject Excel.Application]
[$app Workbooks] Open c:/MyMacroBook.xlsx
$app Run Module1!Macro1
$app Run Module2!Macro1

不是这样工作的-您必须打开Excel工作簿,然后调用单个宏名

set app [::tcom::ref createobject Excel.Application]
[$app Workbooks] Open c:/MyMacroBook.xlsx
$app Run Macro1

不确定重复的宏名称会发生什么情况

请尝试
$app Run Module1。Macro1
(注意用句号代替感叹号)已尝试,但无效