【问题标题】:Very slow loading Access form加载非常慢的访问表单
【发布时间】:2019-11-20 03:05:39
【问题描述】:

我正在重构当前具有 Access 后端的 Access 应用程序,以现在使用 SQL Server 后端。 现在除了一个表单外,其他所有表单都可以加载并且运行良好,但一个表单(绝不是最复杂或最简单的表单)需要大约 1 分钟或更长时间才能加载。

我的计划是创建一个副本,从副本中删除子表单并检查它的加载时间,以确定其中一个子表单是否是延迟但与原始表单没有任何更改,如果原始表单就位,则立即加载副本.如果我删除原件,则加载副本需要 1 分钟或更长时间。 有人对可能发生的事情有任何想法吗?

【问题讨论】:

  • 如果副本使用与原始相同的子表单,那么很可能是其中一个子表单导致了延迟。如果子表单已经加载到原始表单中,那么它可能不需要再次执行(无论它做什么)。证明这一点的方法是删除副本,加载子表单,然后打开原始主表单,看看它现在是否立即加载。
  • 谢谢加雷斯。如果我理解您的建议,那是我的计划,但在从副本中删除任何子表单并关闭原始主表单之前,我打开了副本并立即打开。在我看来,与只有一个原始表单实例相比,从副本中引用原始表单可能更有效。换句话说,自引用会导致抖动,但引用重复项不会导致抖动。如果这是一个有效的想法,似乎我可能会收到“堆栈空间不足”错误......但这没有发生。

标签: vba ms-access


【解决方案1】:

我已经解决了我的问题,但没有完全了解根本原因。 在进行故障排除时,如我最初的问题陈述中所述,我注意到一些似乎与表单名称相关的异常行为。 最后,我重命名了表单,更新了对它的调用和 Shazam!,问题解决了。该表单现在立即打开,无需任何其他更改。 根据记录,该应用程序由 160 个表单、44 个代码模块和 12 个类模块组成。 加雷斯,谢谢你的意见。 如果有人对可能的根本原因有任何想法,我很乐意进一步研究,但现在我需要继续开发。

【讨论】:

    猜你喜欢
    • 2012-01-07
    • 1970-01-01
    • 2019-10-19
    • 2022-09-27
    • 1970-01-01
    • 2015-09-01
    • 2019-04-21
    • 2017-07-13
    • 2015-02-03
    相关资源
    最近更新 更多