下面的代码在一个文件中完美运行,但是当我尝试在另一个文件中使用它时,出现错误“未定义用户定义的类型”并且突出显示了“http As New WinHttpRequest”。这可能是什么原因突然不起作用?
谢谢!
url = Links(2, j)
Dim http As New WinHttpRequest
http.Open "GET", url, False
http.send
Dim Resp As String: Resp = http.ResponseText
Run Code Online (Sandbox Code Playgroud)
问题是该WinHttpRequest库没有添加到项目中,而在另一个 Excel 文件中。
WinHTTP从 VBE 菜单 > 工具 > 参考添加库:
上述方法称为早期绑定。下面的一个称为后期绑定:
如果您想避免添加库并使用更慢的代码并且没有智能感知,请使用以下命令:
Dim http As Object
Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
Run Code Online (Sandbox Code Playgroud)
然后简单地复制和粘贴这个将始终有效:
Sub TestMe()
Dim http As Object
Set http = CreateObject("WinHttp.WinHttpRequest.5.1")
http.Open "GET", "https://stackoverflow.com", False
http.Send
Debug.Print http.ResponseText
End Sub
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
118 次 |
| 最近记录: |