Microsoft ScriptControl を使用して、VBA で JSON 文字列を解析し、結果のオブジェクトをディクショナリ オブジェクトとコレクション オブジェクトに変換したいと考えています。ScriptControl を使用して解析を行う方法は既に知っていますが、結果を Dictionary クラスと Collection クラスにマップする方法がわかりません。オブジェクトのプロパティをループする方法を理解できれば、これは明らかになると思います...
Dim sc As ScriptControl
Dim obj As Variant
Set sc = CreateObject("ScriptControl")
sc.Language = "JScript"
Set obj = sc.Eval("("+json+")") ' json is a string containing raw JSON
' Now what?
ちなみに、vba-jsonライブラリを使用して Dictionaries と Collections に関する出力を取得しましたが、このライブラリはやや遅いことがわかりました。ScriptControl は使用しません。
編集:この投稿でオブジェクト プロパティの取得に関する議論を見つけました。