|
楼主 |
发表于 2014-11-20 11:24
|
显示全部楼层
xfyanmeng 发表于 2014-11-19 17:38
老师好,想请教一下,json数组如果key值不确定怎么处理?我要程序循环处理!
比如你这个第一次循环是 {" ...
检查下你系统文件夹里有没有这个文件:
TLBINF32.DLL
没有的话网上下载一个注册下。
然后测试下面的代码。- Sub Test()
- Const strJSON As String = "[{""name1"":""甲儿"",""age1"":10},{""name2"":""甲女"",""age2"":7}]"
- Dim objJSON As Object
- Dim Child
- Dim i As Long, j As Long
- Dim objTLI As Object
- Dim objMem As Object
-
- Set objTLI = CreateObject("tli.TLIApplication")
-
- With CreateObject("msscriptcontrol.scriptcontrol")
- .Language = "JavaScript"
- .AddCode "var mydata =" & strJSON
- Set objJSON = .CodeObject
- End With
-
- Cells.Clear
- For Each Child In CallByName(objJSON, "mydata", VbGet)
- i = i + 1
- j = 0
- For Each objMem In objTLI.InterfaceInfoFromObject(Child).Members
- j = j + 1
- Cells(i, j) = CallByName(Child, objMem.Name, VbGet)
- Next
- Next
-
- Set Child = Nothing
- Set objJSON = Nothing
- Set objMem = Nothing
- Set objTLI = Nothing
- End Sub
复制代码 其实我很少这样取处理json数据。一般我都是用js语句处理好后再拿到vba里调用。 |
|