I am working on vba macros. I was trying to use a dictionary. But it is giving error 457
with debugger pointing to toprow.Add ActiveCell.value, val
. Can anyone please tell the issue? I even used Cstr(activecell.value), Cstr(val)
as mentioned in one of the answer on similar issue.
Dim toprow As New Dictionary, Dictkey As Variant
Dim val As String
Range("A1").Activate
i = 0
Do Until i = ColLen
val = Chr(65 + i)
toprow.Add ActiveCell.value, val
i = i + 1
ActiveCell.Offset(0, 1).Activate
Loop
Add
ing keys with dictionaries is only possible when a key does not already exist. Accidentally you could entered the key before, or you are watching
the key with the debug watcher, creating the key instanteneously. (= If you watch a certain key in a dictionary it gets created if it doesn't already exist).
You have to
d.Exists(keyname)
and then use the d.Add keyname, value
methodd.Item(keyname) = value
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With