【发布时间】:2014-06-30 13:54:44
【问题描述】:
我有一个带有命令按钮的表单“Form1”,单击该按钮时会隐藏自身,然后打开另一个表单“Form2”,如下所示:
Private Sub Command1_Click()
Me.Visible = False
DoCmd.OpenForm "Form2"
End Sub
Form2 的 Form_Open 子例程包含错误检查。如果发现错误,我希望Form2显示错误,关闭Form1,然后关闭自己:
Private Sub Form_Open(Cancel As Integer)
AnError = 'check for an error
If Not AnError Then
'things are OK
Else
Response = MsgBox("There was an error in Form2.", 0, "Form2 error message")
DoCmd.Close acForm, "Form1"
DoCmd.Close
End If
End Sub
我在这个方案上尝试了许多变体来打开和关闭表单,但都以不同的方式失败。除了在显示错误消息后实际关闭 Form2 之外,这个特定的似乎可以做所有事情。
我再次对 Access 2010 VBA 处理表单打开和关闭的方式感到困惑。 MSDN 上的参考信息非常糟糕。感谢您的帮助。
【问题讨论】:
-
您的代码看起来很合理。您是否验证过代码不仅到达 DoCmd.Close 并且没有在该行抛出错误?
标签: ms-access vba ms-access-2010