將項新增到集合中
通過呼叫 .Add
方法將項新增到 Collection
:
句法:
.Add(item, [key], [before, after])
引數 | 描述 |
---|---|
專案 | 要存放在 Collection 中的專案。這基本上可以是賦值變數的任何值,包括基本型別,陣列,物件和 Nothing 。 |
鍵 | 可選的。String 作為從 Collection 中檢索專案的唯一識別符號。如果指定的金鑰已經存在於 Collection 中,則將導致執行時錯誤 457:此金鑰已與此集合的元素相關聯。 |
之前 | 可選的。用於在 Collection 之前插入專案的現有金鑰(String 值) 或索引(數值)。如果給出了值,則 after 引數必須為空,否則將導致執行時錯誤 5:無效的過程呼叫或引數。如果傳遞了 Collection 中不存在的 String 金鑰,則會產生執行時錯誤 5:無效的過程呼叫或引數。如果傳遞的數字索引在 Collection 中不存在,則會產生執行時錯誤 9:下標超出範圍。 |
後 | 可選的。用於在 Collection 之後插入專案的現有金鑰(String 值) 或索引(數值)。如果給定值,則 before 引數必須為空。引發的錯誤與 before 引數相同。 |
筆記:
-
金鑰不區分大小寫。
.Add "Bar", "Foo"
和.Add "Baz", "foo"
將導致鍵碰撞。 -
如果沒有給出可選的 before 或 after 引數,則該專案將新增到
Collection
中的最後一項之後。 -
通過指定 before 或 after 引數進行的插入將改變現有成員的數字索引以匹配其新位置。這意味著在使用數字索引在迴圈中進行插入時應該小心。
樣品用法:
Public Sub Example()
Dim foo As New Collection
With foo
.Add "One" 'No key. This item can only be retrieved by index.
.Add "Two", "Second" 'Key given. Can be retrieved by key or index.
.Add "Three", , 1 'Inserted at the start of the collection.
.Add "Four", , , 1 'Inserted at index 2.
End With
Dim member As Variant
For Each member In foo
Debug.Print member 'Prints "Three, Four, One, Two"
Next
End Sub