使用VBA代码(宏)连接引用(工具>引用)

Abd*_*fiz 2 vba reference connect

我想以编程方式使用VBA代码将一些引用连接到我的VBA项目,即不使用工具>引用手动设置引用.这可能吗?例如Microsoft Office 12.0对象库.

Fio*_*ala 5

您没有提到Office应用程序.在MS Access中,您可以使用:

ReferenceFromFile "C:\Program Files\Common Files\Microsoft Shared\OFFICE14\MSO.DLL"
Run Code Online (Sandbox Code Playgroud)

也就是说,为要添加的引用提供完整路径.

来自:http://wiki.lessthandot.com/index.php/Add,_Remove,_Check_References

同样,在Excel中:

ActiveWorkbook.VBProject.References.AddFromFile "C:\Program Files\Common Files\Microsoft Shared\OFFICE14\MSO.DLL"
Run Code Online (Sandbox Code Playgroud)

要在Excel中列出引用:Dim ref As Reference

For Each ref In ActiveWorkbook.VBProject.References
    Debug.Print ref.Description; " -- "; ref.FullPath
Next
Run Code Online (Sandbox Code Playgroud)

这将在我的机器上返回一个特定工作簿上的以下内容:

Visual Basic For Applications -- C:\PROGRA~1\COMMON~1\MICROS~1\VBA\VBA7\VBE7.DLL
Microsoft Excel 14.0 Object Library -- C:\Program Files\Microsoft Office\Office14\EXCEL.EXE
OLE Automation -- C:\Windows\system32\stdole2.tlb
Microsoft Forms 2.0 Object Library -- C:\Windows\system32\FM20.DLL
Microsoft ActiveX Data Objects 6.0 Library -- C:\Program Files\Common Files\System\ado\msado15.dll
Microsoft XML, v6.0 -- C:\Windows\System32\msxml6.dll
Microsoft Office 14.0 Access database engine Object Library -- C:\Program Files\Common Files\Microsoft Shared\OFFICE14\ACEDAO.DLL
Microsoft Visual Basic for Applications Extensibility 5.3 -- C:\Program Files (x86)\Common Files\Microsoft Shared\VBA\VBA6\VBE6EXT.OLB
Microsoft Office 14.0 Object Library -- C:\Program Files\Common Files\Microsoft Shared\OFFICE14\MSO.DLL
Run Code Online (Sandbox Code Playgroud)