kee*_*evw 5 deployment vba ms-word
我创建了一个 VBA 宏,它将被我公司内的一些 word 文档使用。该宏检测标签并从文档中删除章节。该文档是由另一个程序创建的。所以宏应该是可单独分发的。
是否可以生成将宏添加到运行可执行文件的用户的可执行文件?
有没有另一种方法来打包宏并将它们安装在用户的计算机上?
谢谢
基本上有五种方法可以做到这一点:
1) 向每个人发送一个包含宏的文本文件,他们可以将其粘贴到自己的 Normal 模板中。这对于不太可能与用户自己创建的宏有任何名称冲突的非常简单的宏来说很好,但它确实需要 VB 编辑器的基本知识。
2) 向每个人发送您通过导出包含宏的模块而创建的 .bas 文件。这为您提供了更多控制权并避免复制/粘贴错误。仍然需要对 VB 编辑器有基本的了解(或者来自您的适当指导)。
3) 将宏打包到 Templates 文件夹中的模板(.dotm 文件)中。用户可以将该模板应用到他们正在创建的任何文档并获得对您的宏的访问权限。无需VB知识;这是通过标准的 Word 新建文件流程完成的。如果需要,还允许您包含样式或其他内容。
4) 将宏打包为位于启动文件夹中的全局模板(.dotm 文件)。用户将可以在他们处理的每个文件中访问您的宏,无需应用您的模板。如果您正在做的事情是团队工作流程的核心并且不需要您在宏中包含样式,那么这很好。您还可以构建 UI 元素。(这种方法在 Word 2011 中可能存在问题;用户可能无法立即访问全局模板,但很容易恢复。)
3 和 4 都要求用户最初将 .dotm 文件放置在正确的位置。您可以帮助他们(一种方法是使用另一个 Word 文档作为“设置”文件,运行时将模板放置在假定的正确文件夹中)。显然,这需要您做更多的工作,因此您想要走多远取决于您和您的业务需求。
5) 此外,如果您可以控制文档本身(而不仅仅是宏)的创建,则可以在文档中嵌入宏。您可以将宏本身放置在文档的 ThisDocument 模块中(在 Project Explorer 中找到您的文档,然后打开 Microsoft Word 对象)。然后将文档另存为 .docm(启用宏的文档)。应指示用户在打开文档时启用宏(不同版本的 Word 使用略有不同的界面来提示用户这一点,但总是非常明显)。