Estou trabalhando em macros VBA para acessar dados ao vivo de um site por meio de chamadas de API. Estou usando a biblioteca VBA-JSON para isso. Existem principalmente dois cenários ao buscar dados:
Cenário # 1 (podemos ver data
é uma matriz JSON):
{
"success": true,
"data": [
{
"id": 4,
"creator_user_id": {
"id": 162,
"name": "ASD",
"email": "email id"
},
"user_id": {
"id": 787878,
"name": "XYZ",
"email": "email id"
},
...
}
]
}
No cenário 1, posso buscar valores dentro data
matriz usando For Each
loop no VBA Excel através da biblioteca VBA-JSON.
Cenário 2:
{
"success": true,
"data": {
"id": 123,
"name": "ABC",
"options": [
{
"id": 119,
"label": "Name1"
},
{
"id": 120,
"label": "Name2"
}
],
"mandatory_flag": false
}
}
Mas no segundo cenário, não consigo acessar dados dentro data
matriz, porque JSON data
matriz está dentro do objeto JSON. Por exemplo, eu quero o valor de id: 120
que deve retornar Name2
, assim, eu quero acessar o valor de label
que retornará Name2
.
Eu tentei de várias maneiras, mas não consigo. Por favor, alguém pode me dizer como isso pode ser feito no VBA Excel? Qualquer ajuda apreciada.
Respostas:
0 para resposta № 1Usando a biblioteca VBA-JSON, você pode acessar o valor desejado chamando:
Set Parsed = JsonConverter.ParseJson(<yourjsonstring>)
Debug.Print Parsed("data")("options")(2)("label")