【问题标题】:VBA in Excel: "Can't find project or library" error when executing in 2007Excel 中的 VBA:在 2007 年执行时出现“找不到项目或库”错误
【发布时间】:2012-10-26 12:20:05
【问题描述】:

在 Excel 2003 中使用 VB for Excel,我在执行带有一些未声明变量的代码时没有问题:

numberOfBooks = 0

但是,如果我尝试在 Excel 2007 中执行相同的代码,则会收到“找不到项目或库”错误消息。

我查看了工具 > 选项,但没有选中“需要变量声明”。在 Excel 2003 中,我没有使用 Option Explicit

我做错了什么?非常感谢。

【问题讨论】:

  • 您的代码中可能还有option explicit?或者您有一些指向特殊对象的链接。
  • 检查工具 > 参考 如果缺少某些东西(应该有),您的代码将无法运行。
  • 也许只是将 Dim numberOfBooks 添加为 Integer(或 Long,或其他)并完成它?

标签: vba excel declare


【解决方案1】:

我已经多次看到这个建议(检查参考资料),这很有意义!

但是,当出现“找不到项目或库”错误时,您处于运行模式,我无法退出? 我错过了什么?

【讨论】:

    【解决方案2】:

    我肯定会赞同 Daniel Cook 的建议,即检查您的参考列表;可能就是这样。但是,在过去几个月中,我遇到了一些情况,即使引用没有任何问题,Excel 2007 也会出现该错误。部分原因似乎与 8 月 12 日发布的安全更新有关 (http://technet.microsoft.com/en-us/security/bulletin/ms12-aug)。它在 mscomctl.ocx 中造成了一些损坏。问题和(一个)解决方案(基本上是重新注册 .ocx)在此 IBM 链接中讨论,该链接与名为 TM1 的 OLAP 产品的 Excel 插件相关:http://www-01.ibm.com/support/docview.wss?uid=swg21608271。 (错误消息与您收到的错误消息不同,但我确实在我编写的另一个加载项上收到了您的错误消息,该加载项没有丢失任何引用,结果证明是同一个问题.)

    我建议做的另一件事是清除您的 .exd 文件,如下所述:http://support.microsoft.com/kb/290537 我还发现这会导致虚假库错误,尤其是在版本升级之后。

    至于你做错的任何其他事情,好吧,我个人倾向于剥皮为我工作的任何人,而不使用 Option Explicit。 8^>

    【讨论】:

    • 嗨,它成功了!最后我检查了参考资料(丹尼尔库克建议的),发现“Microsoft Calendar Control 11.0”不见了。我将 MSCAL.OCX 和 MSCAL.HLP 文件从一台装有 Excel 2003 的 PC 复制到“C:\WINDOWS\SysWOW64”文件夹中(我的 Excel 2007 在 64 位 PC 中)并使用“regsvr32.exe mscal.ocx”注册了控件”。非常感谢! :-)
    【解决方案3】:

    我们公司的一个 excel 宏(到目前为止运行非常频繁,没有任何问题)突然出现了完全相同的错误。 我们没有像永远一样接触代码。老实说,我仍然不知道究竟是什么导致了这个错误。也许是神秘的微软?无论如何..我终于能够修复这个错误。

    即使“需要变量声明”被禁用并且在我的情况下没有设置Option Exlicit首先声明变量对我来说还是有用的:

    Dim numberOfBooks As Integer: numberOfBooks = 0

    我希望这可以省去一些麻烦。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2021-03-26
      • 2013-01-31
      • 2019-06-30
      • 2016-11-22
      • 2013-04-02
      • 2010-11-18
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多