我在互联网上搜索并阅读相关文章,但没有找到我的问题的明确答案。
我想总结一下我的工作。我正在使用第三方程序(Simpack)Com-Interface从Simpack程序获取数据和信息到我的excel表。
我正在使用Set Srv = CreateObject("Simpack.Slv")
进行COM实现。但在此之前我应该从Tools > References > Browse > C:\Program Files\Simpack-2018x\run\bin\win64\_simpack-com-slv.exe
定义COM接口* .exe文件当我第一次打开我的宏书或关闭它然后打开。我不能使用Simpack的COM库。因为它从未在“可用参考”部分列出,带有勾号或不勾选。所以我应该再去Tools > References > Browse > C:\Program Files\Simpack-2018x\run\bin\win64\_simpack-com-slv.exe
使用Simpack库。
我不知道它与我的绑定类型有关吗?或者我错过了一些重要的事情,但如果它自动执行此过程Tools > References > Browse > C:\Program Files\Simpack-2018x\run\bin\win64\_simpack-com-slv.exe
亲切的问候。
答案 0 :(得分:2)
首先,您需要允许以编程方式访问您的VBA项目。在Excel功能区:DEVELOPER->宏安全性并勾选“信任访问VBA项目对象模型”。然后你可以试试这个:
ThisWorkbook.VBProject.References.AddFromFile "C:\Program Files\Simpack-2018x\run\bin\win64\_simpack-com-slv.exe"
答案 1 :(得分:1)
或许这样的事情。 。 。 。
运行此命令以获取引用的GUID:
'******** Commented out but finds dependent GUID references in the project
'Dim obj As Object
'For Each obj In ThisWorkbook.VBProject.References
'Debug.Print "Name: ", obj.Name
'Debug.Print "FullPath: ", obj.FullPath
'Debug.Print "Version: ", obj.Major & "." & obj.Minor
'Debug.Print "GUID: ", obj.GUID
'Next obj
'*******************************
然后在您的代码模块和子添加引用中执行类似的操作。 。 。
'VBA
strGUID = "{000204EF-0000-0000-C000-000000000046}"
'ALERT: Don't slay me for On Error Resume Next
'I was doing this fairly quickly this morning
On Error Resume Next
ThisWorkbook.VBProject.References.AddFromGuid _
GUID:=strGUID, Major:=1, Minor:=0
我不打算切换VBA信任,这可能被视为不良行为。
干杯,Wookie