我一直在尝试添加对特定DLL的引用,经过多次尝试后,我发现了一些实际可行的代码。但是,当我尝试使用应该在Excel中工作的DLL时,它会给我一个错误并拒绝加载。
我已经用Excel / Windows附带的一些DLL测试了这段代码,我没有遇到任何问题..想知道是否有一些“安装”过程需要通过新的DLL或其他东西来完成那种。
运行时错误'48'
加载DLL
时出错代码:
Sub AddReference()
Dim VBAEditor As VBIDE.VBE
Dim vbProj As VBIDE.VBProject
Dim chkRef As Reference
Dim BoolExists As Boolean
Set VBAEditor = Application.VBE
Set vbProj = ActiveWorkbook.VBProject
'~~> Check if "Microsoft VBScript Regular Expressions 5.5" is already added
For Each chkRef In vbProj.References
If chkRef.Name = "VBScript_RegExp_55" Then
BoolExists = True
GoTo CleanUp
End If
Next
vbProj.References.AddFromFile "C:\WINDOWS\system32\HIDDEN.dll"
CleanUp:
If BoolExists = True Then
MsgBox "Reference already exists"
Else
MsgBox "Reference Added Successfully"
End If
Set vbProj = Nothing
Set VBAEditor = Nothing
End Sub
答案 0 :(得分:2)
通常这类问题与Office的冲突位版本和正在加载的DLL有关。
尝试加载正确版本的DLL。