【发布时间】:2011-04-28 14:33:56
【问题描述】:
我有一个 VBA 应用程序在尝试运行时抛出“ActiveX 组件无法创建对象”异常。
断点设置在抛出异常的那一行:
我假设它与 Me.Recordset (我是访问表单)有关。记录集可能与引用的 Microsoft DAO 库有关。以下是当前参考:
该应用程序在 Windows 98 机器上运行,并且 Access .mdb 据称之前运行良好(没有人记得它最初在哪台计算机上或它的配置。表单本身只是滚动浏览数据记录(有效很好),但是当触发上面的 Calc_Confidence_Level() 子例程时,它会在记录集上抛出一个错误,我认为这与它正在滚动的错误相同。
有人知道这里出了什么问题吗?即使直接推动正确的方式以便能够更好地调试它也会很棒,因为我并不经常使用 VBA/Access。
谢谢!
更新 1
我查看了“C:\Program Files\Common Files\microsoft shared\DAO\”,根本看不到 .dll,只有 .tlb 文件。里面应该有.dll吧?
【问题讨论】:
-
您是否确保所有引用的组件都已使用 regsvr32.exe 正确注册?
-
Me.Recordset是什么数据类型?将光标放在Recordset(有断点的那一行)上,右键,转到定义看看它是如何声明的。 -
@shahkalpesh:转到定义给出“光标下的标识符无法识别”。 O_O
-
@0xA3:检查我的更新。它已注册,但缺少实际的 .dll。现在我只需要找到我可以得到那个 .dll 的地方。也许它在 Access 安装盘上或可下载。
-
@David:它目前在 Access 2000 中运行,但我不确定它最初是在哪个版本的 Access 中创建的。