Is There a JSON Parser for VB6 / VBA?

Check out JSON.org for an up-to-date list (see bottom of main page) of JSON parsers in many different languages. As of the time of this writing, you’ll see a link to several different JSON parsers there, but only one is for VB6/VBA (the others are .NET):

  • VB-JSON

    • When I tried to download the zip file, Windows said the data was corrupt. However, I was able to use 7-zip to pull the files out. It turns out that the main “folder” in the zip file isn’t recognized as a folder by Windows, by 7-zip can see the contents of that main “folder,” so you can open that up and then extract the files accordingly.
    • The actual syntax for this VB JSON library is really simple:

      Dim p As Object
      Set p = JSON.parse(strFormattedJSON)
      
      'Print the text of a nested property '
      Debug.Print p.Item("AddressClassification").Item("Description")
      
      'Print the text of a property within an array '
      Debug.Print p.Item("Candidates")(4).Item("ZipCode")
      
    • Note: I had to add the “Microsoft Scripting Runtime” and “Microsoft ActiveX Data Objects 2.8” library as references via Tools > References in the VBA editor.
    • Note: VBJSON code is actually based on a google code project vba-json. However, VBJSON promises several bug fixes from the original version.

Leave a Comment