我试图将foursquare API场地搜索的结果作为一个简单的表格进入excel。我正在使用此请求here并将结果保存到.json结尾的文件中。然后我尝试使用几个在线转换器将其更改为CSV / XML以供Excel读取。但是,我只设法让一个网站实际产生结果,不幸的是他们收费。有没有办法更容易地将此查询的结果导入Excel表格?
答案 0 :(得分: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