word 宏自动运行

10-11

因为word自定义宏是不能自动运行的。

下面,本站与您分享一下,经过实践证明可行的方法,让您的宏随文档的打开而自动运行。

前提条件:您的word宏的安全级别设置为中或低。

理论指导:通过word所允许的能够随文档的打开而自动运行的默认宏,调用自定义宏,这样,我们平时自制的word自定义宏,就能实现自动运行了。

比如,您有一个自定义的倒计时的宏,代码大概如下:

Sub Timer()

'其中的代码已省略。

End Sub

'欲想知道倒计时宏代码范例,请您参阅此文:http://www.dzwebs.net/3243.html

现在,我们只要在ThisDocumet代码中添加默认的自动运行的宏,调用上述的宏,即可实现自定义宏的运行。

Sub AutoOpen()

Call Timer

End Sub

上述的Call Timer就是调用命令。方法是:Call 自定义宏名

上述的方法,比网络中所讲的各种方法,更实用更简单。

知识扩展:

Word中能够自动运行的默认宏代码名称及触发条件如下:

1、名称:AutoExec 条件:启动Word或加载全局模板

2、名称:AutoNew 条件:每次生成新文档时

3、名称:AutoOpen 条件:每次打开一个已有文档时

4、名称:AutoClose 条件:每次关闭文档时

5、名称:AutoExit 条件:退出word或卸载全局模板时

上述的例子中,我们正是借用了AutoOpen宏。

当下列条件之一为真时,如上编码模块中的自动宏将被识别。

自动宏可以保存于 Normal 模板、其他模板或文档之中。唯一的例外是:AutoExec 宏,它只有保存在 Startup 文件夹的 Normal 模板或共用模板中才能自动运行。

在命名冲突的情况下(多个自动宏名相同),Word 运行上下文中最近的自动宏。例如,如果同时在文档和附加模板中建立了 AutoClose 宏,只有文档中的宏能够运行。如在 Normal 模板中建立了 AutoNew 宏,只有当文档或其附加模板中没有名为 AutoNew 的宏时,该自动宏才能运行。

如果用户按下 Shift 键可以终止宏的运行。例如,新建一个文档(该文档基于包含 AutoNew 宏的模板),按下 Shift 键可以终止 AutoNew 宏的运行。方法是按下 Shift 键的同时单击【文件】菜单下【新建】对话框中的【确定】按钮,直到显示新文档。在运行可能触发自动宏的宏时,可用下列指令终止自动宏的运行。

WordBasic.DisableAutoMacros