是的。获取响应的方法是 XMLHTTPRequest、https: //msdn.microsoft.com/en-us/library/ms759148%28v=vs.85%29.aspx。并使用 VBA 解析 JSON 以解析响应,因为它是 JSON。此处描述了使用 VBA 解析 JSON 的最简单方法在 Excel VBA 中解析 JSON,但有更舒适的库可用于搜索关键字Excel VBA parse JSON
。
您的用例的简单示例:
Sub testGetJSON()
sExchangeCode = "TPE"
sStockCode = "2330"
sURL = "https://finance.google.com/finance/info?client=ig&q=" & sExchangeCode & ":" & sStockCode
Set oXMLHTTP = CreateObject("MSXML2.XMLHTTP")
oXMLHTTP.Open "GET", sURL, False
oXMLHTTP.send
sJSONResp = oXMLHTTP.responseText
sJSONResp = Mid(sJSONResp, 4, Len(sJSONResp))
Set oScript = CreateObject("ScriptControl")
oScript.Language = "jscript"
oScript.AddCode "function getProperty(jsonObj, propertyName) { return jsonObj[propertyName]; } "
Set oJSObj = oScript.eval("(" & sJSONResp & ")")
Set oProp0 = oScript.Run("getProperty", oJSObj, "0")
sLCur = oProp0.l_cur
sLT = oProp0.lt
MsgBox sLT & " : " & sLCur
End Sub