我试图将四方 API 场地搜索的结果作为一个简单的表格输入到 Excel 中。我在这里使用这个请求并将结果保存到一个以 .json 结尾的文件中。然后我尝试使用几个在线转换器将其更改为 CSV/XML 以供 Excel 读取。然而,我只设法让一个网站实际产生结果,不幸的是他们收费。有没有办法更容易地将此查询的结果放入 Excel 表中?
问问题
585 次
1 回答
0
这是您可以用来从响应中提取单个元素的一种方法。这确实意味着您需要在脚本控件中为每个属性创建“访问器”函数。
Sub TestIt()
Dim json As String, x As Long, num As Long
json = CreateObject("scripting.filesystemobject"). _
opentextfile("C:\_Stuff\test\json.txt").readall()
'Debug.Print json
Dim s As Object, jsObj As Object
Set s = CreateObject("ScriptControl")
s.Language = "JScript"
s.ExecuteStatement "var obj = null;" & vbCrLf & _
"function JSON(s){obj=eval('('+s+')');}" & vbCrLf & _
"function numVenues(){return obj.response.venues.length;}" & vbCrLf & _
"function venueId(i){return obj.response.venues[i].id;}"
s.Run "JSON", json
num = s.Run("numVenues") 'how many venues
Debug.Print num
For x = 0 To num - 1
Debug.Print s.Run("venueId", x)
Next x
End Sub
于 2013-10-11T18:55:22.403 回答