VBA不会编译? “访问系统注册表时出错”

时间:2013-08-16 13:41:38

标签: vba ms-access

我正在处理一个表单,然后Access崩溃了。当我试图打开它时,我被提示错误,我不知道如何立即修复。像

这样的东西
  

如果无效的表单名称在宏中,则Form1不存在...

当时,我无法理解,所以我点击“Compact and Repair”,关闭并重新打开访问几次。然后还有另一条消息,不要完全记住,但要像“要继续,必须删除所有VBA代码”。我说好的,因为我有一些备份副本。但这并没有解决任何问题。

然后我想出了如何修复原始错误。 “Form1”是我在启动时打开的默认表单,所以我更改了它。所以一切正常,我重新复制代码,但显然代码不起作用。错误消息是:

  

编译错误用户定义的类型

在DAO.QueryDef

然后我按照MS帮助查看参考资料,当我点击工具 - >参考文献,我得到

  

访问系统注册表时出错。

那么,是否有任何想法包括没有乱用注册表?

1 个答案:

答案 0 :(得分:1)

好的,真正的问题是

  

编译错误:用户定义的类型未定义

iDevelop是对的,文件已损坏。我必须创建一个新的访问文件(它们是.accdb而不是.mbd,但是有些概念),并导入所有没有代码的对象。

为了确保没有损坏,我首先将其粘贴到记事本中,然后再粘贴到新文件中。 (作为额外的预防措施)。然后它奏效了。

我仍然收到错误:

  

访问系统注册表时出错。

当我进入工具 - >参考文献,

但是,我认为这可能与我的权限有关,所以也许是有意的。