如果没有详细信息,Access 2007将阻止打开详细信息表单

时间:2018-06-14 13:37:35

标签: ms-access

我试图阻止细节形式打开,如果他们没有要显示的细节。它似乎工作,但有一个额外的恼人的错误2501弹出" openform行动被取消"当我关闭自定义错误消息时。

我在父表单的详细信息按钮上有这段代码:

DoCmd.OpenForm "frmEvent_Participants", , , "[Event_ID]=" & Me!txtEvent_ID

在详细信息表格的公开活动中,我有以下代码:

Private Sub Form_Open(Cancel As Integer)

With Me.RecordsetClone
If .RecordCount = 0 Then
Beep
MsgBox "There are no records to view", vbInformation + vbOKOnly
Cancel = True
End If
End With

End Sub

1 个答案:

答案 0 :(得分:2)

不是您打开的格式产生了错误,它是代码或宏的代码或宏打开表单,通过基本错误处理可以避免错误。

例如,如果表单被称为Form1,并且您使用命令按钮(或其他)后面的代码打开,则使用以下代码:

DoCmd.OpenForm "Form1"

然后围绕它进行错误处理,如:

On Error Resume Next
DoCmd.OpenForm "Form1"
On Error GoTo 0

或者,根据表单的效果,您可能需要更加小心,以确保您唯一的错误是“忽略”" On Error Resume NextError 2501:The OpenForm action was canceled,然后检查:

On Error Resume Next
DoCmd.OpenForm "Form1"
If Err <> 0 And Err <> 2501 Then Err.Raise Err, , Err.Description
On Error GoTo 0