VBA从集合中获取值?
我对VBA很新,我不知道如何从集合中获取值。
这是我的代码:
Dim p As Object Set p = JSON.parse(Response.Content) Dim links As Object Set links = p.Item("links")
在“链接”的debugging器中,我看到:
我正在使用这个库来parsingjson: http : //www.ediy.co.nz/vbjson-json-parser-library-in-vb6-xidc55680.html
我在json中的部分是:
"links":[ { "rel":"next", "href":"www.google.com" } ]
我怎样才能在这里得到“rel”的价值?
不要忘记按键操作,专为收集访问而devise:
links(1)!rel
要么:
links(1)![rel] 'When there are spaces or reserved words.
我会回答我自己的问题:
links(1).Item("rel")
工作…
问候..
使用parsingJSON的JavaScript特性,在ScriptControl之上,我们可以在VBA中创build一个parsing器,它将列出JSON中的每个数据点。 无论数据结构如何嵌套或复杂,只要我们提供有效的JSON,这个parsing器将返回一个完整的树结构。
JavaScript的Eval,getKeys和getProperty方法提供了用于validation和读取JSON的构build块。
结合VBA中的recursion函数,我们可以遍历JSONstring中的所有关键字(高达第n级)。 然后使用一个Tree控件(本文中使用)或一个字典,甚至是一个简单的工作表,我们可以根据需要安排JSON数据。
你可以在这里看到完整的VBA代码