You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

VBA中解析API JSON响应所需JSON库的安装位置咨询

问题

目标是定期查询URL以显示指定货币的汇率值,执行代码行Set json = JsonConverter.ParseJson(http.ResponseText)时出现Error 424错误,完整VBA代码如下:

Private Sub GetCurrencyValues()
    Dim http As Object
    Dim json As Object
    Dim rate As Double
    Dim curr As String
    
    Set http = CreateObject("MSXML2.XMLHTTP")
    
    curr = "USD" ' US Dollar
    http.Open "GET", "https://api.exchangerate-api.com/v4/latest/" & curr, False
    http.Send
    
    Set json = JsonConverter.ParseJson(http.ResponseText)
    
    rate = json("rates")("JPY") ' Japanese Yen
    Range("A1").Value = rate
    
    rate = json("rates")("GBP") ' British Pound
    Range("B1").Value = rate
    
    rate = json("rates")("NOK") ' Norwegian Kroner
    Range("C1").Value = rate
    
    rate = json("rates")("MXN") ' Mexican Peso
    Range("D1").Value = rate
    
    rate = json("rates")("EUR") ' Euro
    Range("E1").Value = rate
    
    rate = json("rates")("PLN") ' Polish Zloty
    Range("F1").Value = rate
End Sub

Private Sub StartTimer()
    Application.OnTime Now + TimeValue("00:15:00"), "GetCurrencyValues"
End Sub

请问需要在哪里安装JSON库,才能解析API返回的JSON响应?

解决方法

Error 424的原因是VBA环境未识别JsonConverter对象,你需要导入VBA-JSON解析模块(无需额外安装程序,直接导入模块即可),操作步骤如下:

  1. 打开Excel,按下Alt + F11打开VBA编辑器
  2. 点击菜单栏的「插入」→「模块」,新建一个空白模块
  3. 将VBA-JSON的核心代码(对应JsonConverter.bas文件内容)复制粘贴到这个新建模块中
  4. 保存Excel文件时,选择.xlsm或.xlsb格式(支持宏的格式)

额外注意:需要启用必要的引用:

  • 在VBA编辑器中,点击菜单栏的「工具」→「引用」
  • 在弹出的引用窗口里,找到并勾选Microsoft Scripting Runtime,点击「确定」

完成以上操作后,你的代码就能正常调用JsonConverter.ParseJson解析API返回的JSON数据了。

内容的提问来源于stack exchange,提问作者Dean

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.31 20:01:33