Access中的VBA DoEvents()或替代方案

时间:2016-01-12 22:30:39

标签: vba ms-access access-vba doevents

我正在阅读的选项将允许我运行宏而不会锁定我的Access会话,直到它完成运行。我有一些用于Access的VBA宏执行SQL SELECT和UPDATE语句,可能需要几乎一个小时才能运行。这当前会锁定Access,直到它完成运行。

我正在查看有哪些选项,以便我可以使用宏,并且在完成后台运行报表时仍然使用Access。我遇到了DoEvents()作为一种选择,但几乎所有事情都没有对我们说。那么有什么好的选择呢?

1 个答案:

答案 0 :(得分:3)

DoEvents有其用途,例如如果你有一个长时间运行的循环,并希望给用户一个他可以实际点击的“取消”按钮。

但在您的用例中,最佳选择是:

  • 制作前端数据库的副本
  • 使用第一个前端
  • 在一个Access实例中运行您的VBA代码
  • 启动Access的第二个实例,打开第二个前端,做你想做的任何事情(好吧,你不应该做一些锁定第一个实例使用的表的东西)。