Object Browser窗口中,有一个正在使用的库的列表。

默认情况下,它带有:


Excel(Microsoft Excel版本对象库)
Office(Microsoft Office版本对象库)
stdole(OLE自动化)
VBA(用于应用程序的Visual Basic)
VBA项目


也可以通过使用VBIDE库(应用程序可扩展性版本的Microsoft Visual Basic)(除了VBAProject)循环VBProject的引用来找到它们。

VBAProject是一个库,一个特殊关键字还是其他?找不到任何文档。

我想它也是VBA库的一部分,但是它似乎没有出现在引用中。

Dim ref As VBIDE.Reference

For Each ref In Application.VBE.VBProjects(1).References
  MsgBox ref.Name & " - " & ref.Description
Next


VBAProject具有工作簿和工作表的代号。

我也无法删除manuallywith code Excel和VBA库以测试VBAProject是否会消失(Office和stdole是可移动的)。

最佳答案

这不是关键字,而是代表您的VBA项目的COM类型库的标识符。

编译VBA项目时,将在内部创建COM类型库-对象浏览器仅列出当前在编辑器中加载的所有类型库,其中包括您自己项目的库。

这就是为什么它列出所有文档模块的“代码名称”的原因-如果添加了标准模块,它也会在那里:



而且,如果您重命名项目(recommended,尤其是对于任何Excel外接程序项目),则不再是VBAProject





#FunFacts:当VBE首次初始化并创建一个新的VBA项目时,它被称为VBProject几毫秒(VB6默认项目名称)-VBE然后将其重命名为VBAProject ...这曾经引起以下问题橡皮鸭!

09-11 13:19