View Single Post
  #5   Report Post  
Posted to microsoft.public.excel.programming
RB Smissaert RB Smissaert is offline
external usenet poster
 
Posts: 2,452
Default update collection of arrays

Jim,

Yes, I had a look at the dictionary object, but what is misses is the option
to add an item after a known other
item and that is what I need as it has to be in the same order as the nodes
in the treeview.

Will look again in putting the data as a 1-D array in node tags. That would
be the most robust linkage with the
nodes and would save me having a routine for clearing data after a node was
deleted.
The other option I can think of now is storing it in a sheet.

RBS

"Jim Cone" wrote in message
...
RBS,

You can do something close to what you want with the
Scripting Dictionary object...
'-------------
Sub test3()
'Requires project reference to "MicrosoftScriptingRuntime"
'Note that the order of the Key and Item arguments are the reverse
'of those in a Collection.
Dim oDic As Scripting.Dictionary
Dim arr(1 To 10)
Set oDic = New Scripting.Dictionary

arr(1) = 5
oDic.Add "a", arr()
MsgBox oDic("a")(1)

arr(1) = 6
oDic("a") = arr()
MsgBox oDic("a")(1)

Set oDic = Nothing
End Sub
'------------------------
Jim Cone
San Francisco, USA
http://www.realezsites.com/bus/primitivesoftware



"RB Smissaert"
wrote in message

Is it possible to update the value of an array element if that array is
held
by a collection?
It seems not:

Sub test2()
Dim oColl As Collection
Dim arr(1 To 10)
Set oColl = New Collection
arr(1) = 5
oColl.Add arr, "a"
MsgBox oColl(1)(1)

oColl(1)(1) = 6
MsgBox oColl(1)(1)
End Sub

Is there any solution for this?
The whole purpose is to store data with nodes of a treeview control and
to
have a robust
linkage between the nodes and the stored data.

RBS