我在Access 2010中有一个自动执行脚本,一旦用户加载了数据库,该脚本便立即执行。问题是,在该用户启用宏之前,脚本会失败并给出错误,因为该脚本尚未运行。
有没有办法延迟自动执行,直到选择“启用宏”,然后触发它?
还是有一种方法可以在没有autoexec的情况下触发与“启用宏”选择相关的代码?
我发现在启动Access 2007时如何强制用户处理安全警告?,这使我想到了这篇Microsoft支持文章。
从Microsoft文章:
您可以使用AutoExec宏在打开数据库时测试该数据库是否受信任。此外,如果数据库不受信任,则宏可以打开一个向用户显示自定义消息的表单。此消息使用户知道必须启用或信任数据库才能成功运行代码。
若要进行AutoExec宏和窗体,请按照下列步骤操作:
- 在设计视图中创建一个新窗体。
- 将文本框或标签添加到窗体,然后键入要向用户显示的信息。
- 保存,然后关闭该窗体。
- 创建一个宏,然后将其命名为AutoExec。
- 显示条件列。
在“条件”列中键入以下行:
CurrentProject.IsTrusted = False
- 在“操作”列中,单击“ OpenForm”。
- 在“动作参数”下的“表单名称”框中,单击在步骤1中创建的表单。
- 保存,然后关闭宏。
打开数据库后,将启动AutoExec宏,然后测试IsTrusted条件。如果Access 2007不信任该数据库,则宏将打开您在宏的“ OpenForm”操作中指定的表单。
宏编辑器在2010年有所不同,但是我能够创建一个Autoexec宏,该宏会检查CurrentProject.IsTrusted = False
并显示我的表单。您可以在表单上放置一条消息,告诉用户启用宏。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句