如何在另一个MS Word文档中调用VBA宏



在MS Excel中,我一直在分发一个包含宏的xls文件。从用户"随机"当前打开的工作簿中,我已经成功地调用了这个宏,告诉Word在哪个文件中查找它。就像这样,当用户单击功能区上的按钮时:

C: \\"'MyExcelFileWithTheMacro.xls'!MyMacroName"

我能在MS Word中做同样的操作吗也就是说,从尚未打开该文件的Word实例中调用位于任何给定文件夹中的Word文件中的宏?

我当然试过了,但Word一直说找不到宏。

我之所以想这样做,是因为它可以方便地分发和更新宏。下一步是对宏进行签名。我希望在这样做的时候可以做到,但不确定。

否,如果应用程序接口中未加载包含宏的文件,则无法在任何Office应用程序中调用和运行宏。

也就是说,如果您将宏放在*.dotm模板中,并让用户将模板放在Word应用程序使用的STARTUP文件夹中,那么Word将以"加载项"的形式加载该模板。在这种情况下,您应该能够访问宏。

或者,如果你不想把它放在"启动"文件夹中,并且你有自动执行Word.Application的代码,那么该代码可以将*.dotm加载为"加载项",这应该会使宏可用(并在完成后将其删除)。在Word语言参考资料和在线示例中研究Application.Addins.LoadAddin.Installed

最新更新