2013-08-16 59 views
0

我正在处理窗体,然后访问崩溃。当我试图打开它时,系统提示我出现了一个错误,我不知道如何修复它。像VBA不会编译? “错误访问系统注册表”

Form1 doesn't exist , if the invalid form name is in a macro ...

当时的东西,我想不出来,所以我打了“压缩和修复”,关闭并重新打开的通道几次。然后还有另外一条消息,不会记得,而是像“继续,所有的VBA代码必须被删除”。我说好,因为我有几个备份副本。但是这并没有解决任何问题。

然后我想出了如何解决原始错误。 “Form1”是我在启动时打开的默认表单,所以我改变了它。所以一切正常,我将代码复制回来,但显然代码不起作用。该错误信息是:

Compile Error user defined type

在DAO.QueryDef

然后我跟着MS帮助和检查的参考,当我点击工具 - >参考,我得到

Error acessing the System Registry.

那么,有没有包括与注册表不一致的想法?

+1

你的MDB似乎损坏。创建一个新的mdb,并从旧的导入所有的东西。并进行每日备份! –

+0

我试图在Northwind数据库中打开引用,并给出了相同的“错误访问注册表”。 我只是在另一台电脑上试过。它可能会打开引用,但仍会给出“用户定义”错误。 – adelzel

+0

你尝试过紧凑/修理吗? – Elias

回答

1

好了,所以真正的问题是

Compile Error: User-Defined Type Not Defined

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

为了确保没有损坏,我将它复制到记事本中,然后将其粘贴到新文件中。 (就像一个额外的预防措施)。然后它工作。

我仍然得到错误:

Error accessing the System Registry.

当我进入工具 - >引用,

,但是,我认为这可能与我的权限,所以也许它的目的。

+0

对于参考错误消息:尝试修复您的Access设置? –