簡體   English   中英

VBA從集合中獲取值?

[英]VBA getting values from a collection?

我是VBA的新手,我無法弄清楚如何從Collection中獲取值。

這是我的代碼:

Dim p As Object
Set p = JSON.parse(Response.Content)

Dim links As Object
Set links = p.Item("links")

在“鏈接”的調試器中,我看到:

在此輸入圖像描述

我正在使用這個庫來解析json: http//www.ediy.co.nz/vbjson-json-parser-library-in-vb6-xidc55680.html

我在json的部分是:

"links":[
    {
        "rel":"next",
        "href":"www.google.com"
    }
]

如何在這里獲得“rel”的值?

我會回答我自己的問題:

links(1).Item("rel")

工作...

問候..

不要忘記bang操作符,用於按鍵訪問集合:

links(1)!rel

要么:

links(1)![rel] 'When there are spaces or reserved words.

使用解析JSON的JavaScript功能,在ScriptControl之上,我們可以在VBA中創建一個解析器,它將列出JSON中的每個數據點。 無論數據結構如何嵌套或復雜,只要我們提供有效的JSON,此解析器將返回完整的樹結構。

JavaScript的Eval,getKeys和getProperty方法提供了用於驗證和讀取JSON的構建塊。

結合VBA中的遞歸函數,我們可以遍歷JSON字符串中的所有鍵(最多到第n級)。 然后使用Tree控件(在本文中使用)或字典甚至在簡單的工作表上,我們可以根據需要排列JSON數據。

您可以在此處查看完整的VBA代碼

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM