因为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