Nun*_*ira 5 excel vba excel-vba
我正在从Excel VBA构建OAuth2.0身份验证工具。
这些是我正在使用的参考:
但是,在在线编译时代码会中断:
Private objXMLRequest As MSXML2.ServerXMLHTTP
Run Code Online (Sandbox Code Playgroud)
我尝试以管理员身份从命令窗口运行:
regsvr32.exe "c:\windows\system32\winhttp.dll"
Run Code Online (Sandbox Code Playgroud)
和:
regsvr32.exe "c:\windows\system32\winhttpcom.dll"
Run Code Online (Sandbox Code Playgroud)
但是它们都返回错误:
RegSvr32 - Entry point DllRegisterServer not found.
Run Code Online (Sandbox Code Playgroud)
您必须参考Microsoft XML, v 3.0
。
请参阅:https : //msdn.microsoft.com/zh-cn/library/ms763701%28v=vs.85%29.aspx
Microsoft XML, v 6.0
必须带有类型MSXML2.ServerXMLHTTP60
。
测试一下很有用:
Sub Testa()
Dim aTests: aTests = Array( _
"Microsoft.XMLHTTP" _
, "Msxml2.XMLHTTP" _
, "Msxml2.XMLHTTP.3.0" _
, "Msxml2.XMLHTTP.4.0" _
, "Msxml2.XMLHTTP.5.0" _
, "Msxml2.XMLHTTP.6.0" _
, "Microsoft.XMLHTTP.6.0" _
, "Msxml2.XMLHTTP.7.0" _
)
Dim sProgId, sTypeName
For Each sProgId In aTests
Dim oX
On Error Resume Next
Set oX = CreateObject(sProgId)
If 0 = Err.Number Then
sTypeName = TypeName(oX)
Else
sTypeName = Err.Description
End If
On Error GoTo 0
MsgBox sProgId + "=>" + sTypeName
Next
End Sub
Run Code Online (Sandbox Code Playgroud)