这感觉它应该非常简单,但我有点卡住了。我想使用Excel VBA访问API网址。 API为我提供了一个非常简单的JSON响应,其中包含一个加载ID,用作调用另一个API的参数,另一个API不是问题,因为我可以用XML或CSV获取响应并将其解析为Excel中。
API响应: {" loadid":" 1234567890"}
我需要从这个回复中提取的是数字" 1234567890"。
这是我迄今为止所尝试过的:
Sub getLoadID()
Dim loadID As String
Dim loadIDUrl As String
loadIDUrl = "blah blah"
proxyServer = Worksheets("Sheet1").Range("A1").Value
Set httpReq = CreateObject("WinHttp.WinHttprequest.5.1")
httpReq.Open "GET", loadIDUrl, False
httpReq.setRequestHeader "Content-Type", "text/xml"
httpReq.setProxy 2, proxyServer, ""
httpReq.setTimeouts -1, -1, -1, -1
httpReq.send request
httpReq.ResponseText = loadID
Worksheets("Sheet1").Range("A2").Value = loadID
End Sub
我试图将整个字符串放入单元格中以确保Excel能够从响应中获取字符串,但是前进只会乐意将值存储为变量而不是将其写入到表格。
上面的代码运行没有错误,我只是没有在单元格A2中获取字符串...
每次我使用Excel VBA搜索解析JSON时,每个人都建议使用外部库,但我尝试在工作中这样做,因此我无法使用外部库。
干杯