【问题标题】:Access compiles all code before running first functionAccess 在运行第一个函数之前编译所有代码
【发布时间】:2015-12-02 17:10:26
【问题描述】:

应用程序由 3 部分组成:前端、后端和公共库,用于两部分。该应用程序具有自动重新连接功能,如果对库的引用被破坏,则可以选择公共库,然后重新连接所有表。应用程序在从 autoexec 宏调用的第一个 Init 函数中检查有效的公共库引用,该函数没有对公共库的任何引用。长期以来一切正常,但现在如果找不到公共库,应用程序会在启动时给出“语法错误”。我不知道这个应用程序发生了什么,我有许多其他应用程序具有相同的技术,它们在同一台 PC 上运行良好。

我尝试按照here 的描述进行压缩/修复、反编译、压缩/修复并再次编译 - 不走运。 VBA 编辑器和数据库选项对损坏的和工作的数据库具有相同的设置。 有什么想法可以做吗?

【问题讨论】:

    标签: ms-access vba ms-access-2010


    【解决方案1】:

    抱歉问题,在提问之前我不得不更深入地挖掘,我发现了问题,并且可能对某人来说会很有趣。

    我通过备份运行并找到了应用程序正常工作的副本。当在具有 Init 函数的模块中声明具有在公共库中声明的 Enum 类型的函数时,应用程序已停止工作。当我将数据类型更改为整数而不是枚举时,应用程序运行良好。

    总结:Access 检查所有函数的数据类型,在运行特定函数之前在模块中声明,如果任何函数数据类型未在当前应用程序中声明,则停止工作。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2017-08-21
      • 1970-01-01
      • 2014-12-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多