在网络驱动器上调用另一个宏的Word格式宏

时间:2016-03-31 19:16:32

标签: vba reference ms-word call word-vba

我已经有.docm文件,其中嵌入了简单的格式化宏。宏工作。但是我有100多个不同的.docm文件,它们基本上使用相同的宏。我需要更改格式时,不想在所有100多个.docm文件上更改宏,而是希望将宏放在网络驱动器上稳定位置的单独文本文件中,并在每个.docm文件中包含宏代码引用该文本文件。

我尝试了一个Call Shell(AppName,1)语句,其中AppName包含txt文件的路径,但编译器不能使用冒号。

我研究创建一个宏来更改每个文档中嵌入的其他宏,但是由于病毒扫描程序而被建议不要使用它。

1 个答案:

答案 0 :(得分:0)

无法以您想象的方式从文本文件中运行宏。 (很酷的想法,但我认为存在安全风险。)

最好将所有宏放在一个模板(dotm)中,然后将其放在STARTUP文件夹中。当Word加载时,它将加载此模板(及其所有功能区自定义和宏)作为“加载项”。 (另请参阅Developer / Add-ins对话框,这是可以管理它们的地方。)

通过这种方式,您的代码可以集中管理 - 但您必须明确打开模板才能更改代码。它不能仅仅通过加载的加载项完成(只能使用Normal.dotm)。

您还可以在此加载项模板中使用您从其他宏调用的宏。这可以使用Applicaton.Run方法完成。