使用VBA-JSON将JSON数据导入Excel时出错

时间:2017-08-29 17:55:49

标签: json excel excel-vba vba

我正在使用VBA-JSON将Json数据导入excel

我通过发出GET请求从API中提取JSON数据

JSON数据如下所示:

{"TotalArea":{"CM":326.18,"mm":3261.8}}

我用于将此数据导入excel的代码:

Public Sub exceljson()
    Dim http As Object, JSON As Object, i As Integer

    Set http = CreateObject("MSXML2.XMLHTTP")
    http.Open "GET", "http://api.demosite.com/totalar", False
    http.Send
    Set JSON = ParseJson(http.responseText)

    i = 2
    For Each Item In JSON
        Sheets(1).Cells(i, 1).Value = Item("TotalArea")("CM")
        Sheets(1).Cells(i, 2).Value = Item("TotalArea")("mm")
        i = i + 1
    Next

    MsgBox ("complete")
End Sub

运行上面的代码会给我“类型不匹配”错误。

1 个答案:

答案 0 :(得分:0)

总之,http://api.demosite.com/totalar上没有json文件。
所以第一步就是检查,当您调用url时,后面是否有json文件
例如:使用http://jsonplaceholder.typicode.com/users
前提条件:

  1. 在引用中包含Microsoft脚本运行时
  2. 添加您的项目https://github.com/VBA-tools/VBA-JSON/blob/master/JsonConverter.bas