2013-05-02 17 views
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 

我得到一個編譯錯誤,表明設置似乎無效。

enter image description here

它基本上說,外部程序無效。

任何人都可以幫我嗎?

+0

你是如何調用這個代碼?希望從程序?或者你是否直接將這些代碼粘貼到類模塊中? – 2013-05-02 15:54:58

+0

我直接放了一個類模塊。 – bassprodukt 2013-05-02 15:56:41

+0

啊!我以爲是......一時。 – 2013-05-02 15:56:56

回答

4

您錯過了我猜測的適當參考。點擊工具~~>在VBA中引用

添加一個項目引用;

  • 微軟的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 

截圖

enter image description here

+0

您好,非常感謝您的回覆。 我有你提到的項目引用,並且我放在那裏的字符串URL只是一個佔位符,那裏有一個實際的URL ......所以我不確定發生了什麼。 – bassprodukt 2013-05-02 15:33:08

+0

當我沒有引用時,出現了編譯錯誤。你可以發佈錯誤消息的屏幕截圖嗎? – 2013-05-02 15:41:43

+0

剛發佈,它基本上說「外部程序無效」。 – bassprodukt 2013-05-02 15:47:45