【问题标题】:Compilation Error with small script小脚本编译错误
【发布时间】:2013-04-26 19:40:32
【问题描述】:

我正在尝试在 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 似乎无效。

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

谁能帮帮我?

【问题讨论】:

  • 你怎么称呼这段代码?希望从一个程序?还是直接将这段代码粘贴到类模块中?
  • 我直接放了一个class模块。
  • 啊!我是这么想的……一会儿。
  • 刷新页面以查看下面我的回答中的 FOLLOWUP。
  • 感谢您抽出宝贵时间,开始工作! :)

标签: vba excel excel-2007


【解决方案1】:

我猜你缺少适当的参考。点击工具~~>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

截图

【讨论】:

  • 您好,感谢您的回复。我确实有你提到的项目引用,而且我放在那里的字符串 URL 只是一个占位符,那里有一个实际的 URL……所以我不确定发生了什么。
  • 当我没有引用时出现编译错误。可以发一下错误信息的截图吗?
  • 刚贴出来,基本是说“外部程序无效”。
猜你喜欢
  • 1970-01-01
  • 2011-09-05
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多