【问题标题】:How to reference an old version of the VBA library?如何引用旧版本的 VBA 库?
【发布时间】:2019-11-14 22:47:27
【问题描述】:

我使用的是 Excel 2013。VBA 引用是 Excel (built-in) 的一部分,因此我无法删除它。

是否可以引用另一个版本的 VBA 库?除了好奇之外,我想知道的原因是查看旧版本的对象浏览器,看看它是否列出了一些当前隐藏/过时的属性/方法,例如Excel.DialogSheet

Workbook.SheetActivate event 有一个 Object 类型的 Sh 参数。其中一种可能的工作表类型是Excel.DialogSheet,其中should be checked with the TypeOf operator

当我尝试添加另一个 VBA 引用时,我收到消息:Name conflicts with existing module, project, or object library

使用的默认来自:

  • C:\Program Files\Common Files\Microsoft Shared\VBA\VBA7.1\VBE7.DLL

其他参考资料来自:

  • C:\Windows\System32\msvbvm60.dll
  • C:\WINDOWS\system32\VEN2232.OLB

我还检查了另一台使用 Excel 2003 的计算机:

  • C:\Program Files\Common Files\Microsoft Shared\VBA\VBA6\VBE6.DLL

并且有:

  • C:\WINDOWS\system32\VEN2232.OLB
  • C:\WINDOWS\system32\MSVBM50.DLL
  • C:\WINDOWS\system32\MSVBM60.DLL
  • C:\WINDOWS\system32\VBAEND32.OLB

【问题讨论】:

  • 有趣的问题(截至昨天,您获得了 10 个代表点)。务实的解决方案:找一个朋友,他的地下室里有一台旧的、没用过的机器在苦苦挣扎?我想在您当前的机器上正确获取所有依赖项将是严重的 DLL 地狱。
  • @JohnColeman 我注意到了blog,但还没有完整地阅读它,这很好。下面的解决方案对我来说是理想的,我不想搞乱编辑 DLL。虽然如果有人确实知道仍然引用它的方法(最好是实用的解决方案),那么我仍然会支持答案。

标签: excel vba excel-2013


【解决方案1】:

简单的答案是否定的。此外,没有必要。只需打开对象浏览器,右键单击某些内容并选择“显示隐藏的成员”。然后,您可以随心所欲地浏览所有已弃用的功能,例如 DialogSheet。 :)

【讨论】:

  • 我不知道option。谢谢:)
猜你喜欢
  • 2014-08-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多