爲了從Excel中的web服務獲取數據,我創建了一個excel插件提供函數來獲取它;用戶只需要在類型細胞: =sendRequest("http://webservice.com")
如何向VBA發送Async XMLHTTP請求?
我有2個Excel文件在於向世人證明了兩個sending request
方法:1。synchronous和2 asynchronous
在sync
方法,該功能可以發送請求和normaly獲取數據。但是,如果我們有100個,200個單元格稱它,它將需要Excel等待大量的時間;這也使得Exel成爲而不是重新編碼。
我給這家目前的解決方案是使用async
方法below code
Public Function sendAsyncRequest(URL)
'other statement
' Get some stuff asynchronously.
xmlHttpRequest.Open "GET", URL, True
xmlHttpRequest.send
sendAsyncRequest = xmlHttpRequest.responseText
End Function
但單元格的值常是是零0而不是repsone文本。
我必須使用我的處理程序類將其與OnReadyStateChange
的xmlHttpRequest object
綁定,以將響應文本設置爲單元格。但是,它也清除了單元格的公式。
所以我的問題是如何更改單元格的顯示文本而不更改其公式?
我也歡迎另一種解決方案發送請求並獲得async
方法返回值。
我的答案有一個關鍵的缺點,絕對不應該被接受。請取消選中它。 – 2012-07-12 12:23:37