在表单加载 - 访问之前捕获记录源错误

时间:2014-05-16 03:15:27

标签: vba ms-access access-vba

我目前正在处理访问中的表单,其记录源应该来自应在Form_Load()生成的临时表,并在表单关闭时删除。

我现在的工作方式是将Record Source设置为另一个永久表,当表单加载时,生成临时表并更改记录源。表单关闭后,代码会将记录源设置回原来的状态。这非常有效。

然而,偶尔会出现问题,并且出于某种原因,Record Source属性不会被切换回来,虽然临时表被删除所以当我尝试加载表单时,我收到错误:

  

记录来源' TempTable'在此表单或报告上指定的不存在

事实证明,即使在调用Form_Load()之前也会发生此错误,因此我无法事先做好准备。我可以想到解决这个问题的唯一方法就是在按下Home窗体上的按钮时尝试重置它,但这并不是最佳选择,因为我仍然希望能够从其他位置打开它。

有没有办法捕获此错误并修复它而无需进入表单属性并在出现错误时更改记录源?

1 个答案:

答案 0 :(得分:0)

简单的解决方法不是调用/打开表单而是函数。 该功能将能够安排所有记录源工作。完成后,您可以打开表单。

事实上,您不再需要切换表单的recorsource了。

函数openform()

  • 准备临时表
  • 打开表单

结束功能

马丁

相关问题