0

我试图将四方 API 场地搜索的结果作为一个简单的表格输入到 Excel 中。我在这里使用这个请求并将结果保存到一个以 .json 结尾的文件中。然后我尝试使用几个在线转换器将其更改为 CSV/XML 以供 Excel 读取。然而,我只设法让一个网站实际产生结果,不幸的是他们收费。有没有办法更容易地将此​​查询的结果放入 Excel 表中?

4

1 回答 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 回答