在access窗体中,当从有数据到无数据,或者从无数据到有数据,退回父窗体时,就有可能出现"无当期记录"的警告.

在宏中使用OnError命令.

微软官方文档中对OnError说明:


可以使用 OnError 操作指定宏出现错误时如何处理。

设置

OnError 操作具有以下参数。

操作参数说明
转到

指定在遇到错误时应执行的常规行为。单击下拉箭头,然后单击下列设置之一:

设置说明
下一个Microsoft Office Access 2007 会记录 MacroError 对象中错误的详细信息,但并不停止宏。宏将继续执行下一操作。
宏名Access 停止当前宏并运行在宏名参数中命名的宏。
失败Access 停止当前宏并显示一条错误消息。
宏名称

如果将转到参数设置为“宏名”,请键入要用于错误处理的宏的名称。键入的名称必须与当前宏的“宏名”列中的名称匹配;不能输入其他宏对象的名称。在下面的示例中,ErrorHandler 宏与 OnError 操作包含在同一宏对象中。

如果将参数设置为“下一个”或“失败”,则必须将此参数保留为空。

注解

  • OnError 操作通常放在宏的开头,但也可以放在宏的后面。每次运行该操作时,该操作所建立的规则都会生效。
  • 如果将转到参数设置为“失败”,则 Access 将按宏中没有 OnError 操作的方式执行。也就是说,如果遇到了错误,Access 就会停止宏并显示一条标准的错误消息。“失败”设置主要用于关闭先前在宏中建立的任何错误处理。

示例

下面的宏演示 OnError 操作的用法。在此示例中,OnError 操作指定 Access 在发生错误时运行一个名为 ErrorHandler 的自定义错误处理宏。如果在任何后续操作中发生错误,Access 都会跳转到 ErrorHandler 宏。ErrorHandler 宏显示一个消息框,它引用 MacroError 对象以显示错误的有关信息。

宏名操作参数
 OnError

转到宏名

宏名:ErrorHandler

 [Action 2] 
 ... 
 [Action n] 
ErrorHandlerMsgBox

消息:=“错误 # 对 " & [MacroError].[ActionName] & " 操作的 " & [MacroError].[Number] & "。”

发嘟嘟