我需要使用下面的 JSON 文件更新 MS-Access 中的货币表:
{
"timestamp": 1465843806,
"base": "CAD",
"rates": {
"AED": 2.87198141,
"AFN": 54.21812828,
"ALL": 95.86530071,
"AMD": 374.48549935,
"ANG": 1.39861507
}
}
VBA代码如下:
Private Sub cmdJsonTest_Click()
Set MyRequest = CreateObject("WinHttp.WinHttpRequest.5.1")
MyRequest.Open "GET", "https://website.org/api/latest.json?base=CAD"
MyRequest.send
' MsgBox MyRequest.ResponseText
Dim Json As Object
Set Json = JsonConverter.ParseJson(MyRequest.ResponseText)
MsgBox Json("base")
End Sub
上面的代码可以正确显示带有 CAD 的消息框,但我需要循环并捕获每个货币代码及其汇率值。我使用什么语法来执行此操作?我可以提供函数 Json() 函数的代码,但没有找到上传它的方法。任何援助将不胜感激。
如果你正在使用这个 json 解析器https://github.com/VBA-tools/VBA-JSON https://github.com/VBA-tools/VBA-JSON,使用此代码
Private Sub IterateDictionary(poDict As Dictionary)
Dim key As Variant
For Each key In poDict.Keys()
If TypeName(poDict(key)) = "Dictionary" Then
Debug.Print key
IterateDictionary poDict(key)
Else
Debug.Print key, poDict(key)
End If
Next
End Sub
编辑:
您必须使用您想要执行的任何过程来修改 debug.print。要在代码中使用它,请将此行放在 MsgBox 之后。
IterateDictionary Json
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)