2013-10-24 20 views
0

如何访问从JSON解码的这个key变量?我使用了Excel VBA: Parsed JSON Object Loop中的示例。即使将它改为小写,VBA编辑器也会将大小写更改为大写。我也尝试对小写字母key进行注释和取消注释,但它仍会改变它。我并不认为案子很重要,但它抱怨,我不知道为什么,因为该领域明显存在。当VBA不断变为大写字符时,如何访问小写的JSON变量?

Imgur

+0

变量的'Type'是'arr'?由于错误消息框,我看不到您的声明。 –

+0

'Set arr = jsonDecode(jsonString)' – Chloe

+0

这就是变量的赋值。什么是'暗淡的...'? –

回答

1

我不得不在模块的顶部添加Private sc As ScriptControl否则它不会工作。即使Dim sc as ScriptControl内的功能也无法正常工作。我还创建了一个Javascript get函数来检索值。

Private sc As ScriptControl 
... 
Function jsonDecode(jsonString As Variant) 
    Set sc = New ScriptControl 
    sc.Language = "JScript" 
    sc.AddCode "Object.prototype.get=function(i) { return this[i]; };" 
    Set jsonDecode = sc.Eval("(" + jsonString + ")") 
End Function 

... 

Set arr = jsonDecode(objHTTP.ResponseText) 
Debug.Print arr.get("key") 
相关问题