2017-02-16 25 views
1

VBAマクロを使用して、WebサイトからのライブデータにAPI呼び出しを介してアクセスしています。私はVBA-JSONライブラリを使っています。VBA-JSONを使用したVBA ExcelのJSONオブジェクト内のJSON配列へのアクセス

シナリオ#1(我々はdataはJSONアレイで見ることができる):2つのシナリオデータを取得主ある

シナリオ1では
{ 
    "success": true, 
    "data": [ 
    { 
     "id": 4, 
     "creator_user_id": { 
     "id": 162, 
     "name": "ASD", 
     "email": "email id" 

     }, 
     "user_id": { 
     "id": 787878, 
     "name": "XYZ", 
     "email": "email id" 
     }, 
     ... 
    } 
    ] 
} 

IはでFor Eachループを使用してdata配列内の値を取得することができVBA-JSONライブラリによるVBA Excel

シナリオ#2:

{ 
    "success": true, 
    "data": { 

    "id": 123, 
    "name": "ABC", 

    "options": [ 
     { 
     "id": 119, 
     "label": "Name1" 
     }, 
     { 
     "id": 120, 
     "label": "Name2" 
     } 
    ], 
    "mandatory_flag": false 
    } 
} 

しかし、JSON data配列は、JSONオブジェクト内にあるので、第二のシナリオでは、私は、dataアレイ内のデータにアクセスすることはできません。たとえば、の値はName2を返さなければならないので、私はlabelの値にアクセスしたいです。これはName2を返します。

私はいろいろ試してみましたが、それを手に入れることはできません。これはVBA Excelでどのように行うことができます誰に教えてください? 助けていただければ幸いです。

+0

「Name2は」を返します「ラベル」の値にアクセスしたい –

+0

あなたがコードやシェアを投稿してくださいでしたあなたが使用しているVBA-JSONライブラリへのリンク?あなたが試したコードを投稿し、適切な書式を書き留めます。 – omegastripes

答えて

0

VBA-JSONライブラリを使用して、あなたが呼び出すことにより、必要な値にアクセスすることができます。

Set Parsed = JsonConverter.ParseJson(<yourjsonstring>) 
Debug.Print Parsed("data")("options")(2)("label") 
関連する問題