3

私は次のようなコレクションを持っています:

Set NodeColl = New Collection
NodeColl.Add "Node 1", "Node 1"
NodeColl.Add "Node 2", "Node 2"
NodeColl.Add "Node 3", "Node 3"

他のアイテムやコレクション自体に影響を与えることなく、選択したアイテムのキーの名前を変更する簡単な方法があるかどうか疑問に思っています。たとえば、NodeColl.Items( "Node 1")。Key="Somestring"のようなものです。

4

1 に答える 1

7

いいえ、手動で追加および削除する必要があります。

with NodeColl
    .add .Item("Node 2"), "New Key", , "Node 2"
    .remove "Node 2"
end with

または、Microsoft Scripting Runtimeへの参照を追加するか、または;を使用して、Dictionaryこれを許可します。

dim NodeColl as object: Set NodeColl = createobject("Scripting.dictionary")
NodeColl.add "key for Node 1", "Node 1"
NodeColl.add "key for Node 2", "Node 2"
NodeColl.add "key for Node 3", "Node 3"

'//direct rename allowed;
NodeColl.Key("key for Node 2") = "New Key here"
于 2012-05-23T15:00:00.867 に答える