I\'m a non-VB6 person who had the misfortune of inheriting a buggy legacy VB6/Classic ASP project. There\'s a section where a lot of entries are put into a Dictionary<
An enumeration over a Dictionary isn't of type Object
, you should use Variant
instead:
Dim o As Variant
Dim sDicTempAggr As String
sDicTempAggr = ""
For Each o In oParams
sDicTempAggr = sDicTempAggr & ", " & oParams(o)
Next
Also within the For Each
the Key is returned not the dictionary member hence the oParams(o)
for the value, if you change to For Each o In oParams.items
you can use oParams
directly.
Here's a sample for iterating, if you still have a problem look at the second loop to inspect the types of the values in the dictionary
Dim oParams As New Dictionary
oParams.Add 1, "This"
oParams.Add 2, "That"
oParams.Add 3, "The other"
Dim key As Variant
Dim sDicTempAggr As String
Dim sTypes As String
For Each key In oParams.Keys
sDicTempAggr = sDicTempAggr & IIf(sDicTempAggr <> "", ",", "") & oParams(key)
Next key
For Each key In oParams.Keys
sTypes = sTypes & IIf(sTypes <> "", ",", "") & TypeName(oParams(key))
Next key