【发布时间】:2014-08-19 02:21:41
【问题描述】:
MS Access 2007(可能还有更高版本)似乎有一个错误,当在 On No Data 事件中取消打开报表并且 On Close 事件包含对公共函数的调用时,该错误会导致硬崩溃。这似乎不是 MS Access 2003 或更早版本的问题。
重现步骤:
- 在 MS Access 2007 中创建新报告(这在 MS Access 2003 及更早版本中不是问题)
- 设置记录源(可以是任何东西,但必须是绑定报表)
- 将事件 On No Data 设置为
[Event Procedure] - 在报告的代码模块中,输入:
Private Sub Report_NoData(Cancel As Integer)`
Cancel = True
End Sub
- 将事件关闭时设置为
=Foo() - 在标准代码模块中,添加以下代码:
Public Function Foo()
End Function
- 使用排除所有数据的过滤器打开报告(以引发无数据事件)
结果:
- Access 立即遭受严重崩溃,并显示“Access 已停止工作...”错误消息
两个问题:
- 有解决方法吗?
- 这是一个已知问题吗? (为 Microsoft 或更大的 MS Access 社区所知)
【问题讨论】: