我试图阻止细节形式打开,如果他们没有要显示的细节。它似乎工作,但有一个额外的恼人的错误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
答案 0 :(得分:2)
不是您打开的格式产生了错误,它是代码或宏的代码或宏打开表单,通过基本错误处理可以避免错误。
例如,如果表单被称为Form1
,并且您使用命令按钮(或其他)后面的代码打开,则使用以下代码:
DoCmd.OpenForm "Form1"
然后围绕它进行错误处理,如:
On Error Resume Next
DoCmd.OpenForm "Form1"
On Error GoTo 0
或者,根据表单的效果,您可能需要更加小心,以确保您唯一的错误是“忽略”" On Error Resume Next
为Error 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