2

我正在尝试在 Excel 2007 中编写一个 cls,这是代码:

Dim JiraService As MSXML2.XMLHTTP60
Set JiraService = New MSXML2.XMLHTTP60

JiraService.Open "GET", "URL", False
JiraService.SetRequestHeader "Content-Type", "application/json"
JiraService.SetRequestHeader "Accept", "application/json"
JiraService.Send

sRestResponse = JiraService.ResponseText

MsgBox sRestResponse

我收到一个编译错误,表明 Set 似乎无效。

在此处输入图像描述

它基本上说外部程序无效。

谁能帮我吗?

4

1 回答 1

4

我猜你错过了适当的参考。单击工具~~> VBA 中的引用

添加项目引用;

  • Microsoft WinHTTP 服务,版本 5.1
  • 微软 XML,v6.0

也在这一行

JiraService.Open "GET", "URL", False

如果URL是保存实际 URL 的变量,"URL"则将被视为字符串而不是变量,因为它位于引号之间。我猜你正在尝试这个?

JiraService.Open "GET", URL, False

跟进(来自评论)

问题是您已将上述代码粘贴到类模块中。您假设将代码粘贴到模块中并在子程序中调用它。看这个例子

Sub Sample()
    Dim JiraService As MSXML2.XMLHTTP60
    Set JiraService = New MSXML2.XMLHTTP60

    JiraService.Open "GET", URL, False
    JiraService.SetRequestHeader "Content-Type", "application/json"
    JiraService.SetRequestHeader "Accept", "application/json"
    JiraService.Send

    sRestResponse = JiraService.ResponseText

    MsgBox sRestResponse
End Sub

截屏

在此处输入图像描述

于 2013-05-02T15:07:28.053 回答