Pomoč Collabora Office 24.04
Predmete Collection (angl. zbirka) lahko uporabljamo za shranjevanje elementov različnih vrst. Do vsakega elementa lahko dostopamo z njegovim indeksom ali z neobveznim ključem, povezanim z njim.
Predmet Collection ima naslednje metode:
Add: vstavi nov element v zbirko. Neobvezno lahko določite vrednost niza kot ključ za predmet.
Count: vrne število elementov v zbirki.
Item: vrne element v zbirki s podajanjem njegovega indeksa ali ključa.
Remove: odstrani naveden element iz zbirke z njegovim indeksom ali ključem.
Do elementov v predmetu Collection lahko dostopate z njihovimi indeksi (kot v enodimenzionalnem polju na osnovi števila 1) ali prek z njimi povezanih ključev.
Storitev ScriptForge Dictionary razširja predmet Collection z zagotavljanjem dopolnilnih funkcij, kot so pridobivanje in zamenjava ključev ter uvoz in izvoz v predmete Array in nize JSON.
Predmet Collection ustvarite z uporabo ključne besede New. Naslednji primer ustvari predmet Collection in ga napolni s tremi elementi:
Dim myCollection as New Collection
myCollection.Add("Some text")
myCollection.Add(100)
myCollection.Add(Array(1, 2, 3, 4))
MsgBox myCollection.Count ' 3
Metodo Add lahko uporabite za dodajanje novih elementov v predmet Collection.
oCollection.Add(item, [key], [before|after])
item: element, ki bo dodan v predmet Collection. Lahko je poljubne vrste.
key: niz, uporabljen kot enkratni ključ, s katerim boste identificirali to vrednost.
before, after: neobvezni argument ključnih besed, ki nakazuje, kam bo postavljen novi element v predmetu Collection. Navedete lahko le enega od argumentov before (pred) in after (za), da določite indeks ali ključ, pred katerim (ali za katerim) bo umeščen novi element.
Spodnji primer doda dva elementa v predmet Collection. Prvi ima z njim povezan ključ, drugi ne.
Dim myCollection as New Collection
myCollection.Add(100, "first")
myCollection.Add(101)
Metoda Add podpira tudi argumente ključnih besed:
myCollection.Add(item := 100, key := "first")
Ključi morajo biti enkratni v predmetu Collection. Primerjava med ključi ne razlikuje velikih in malih črk. Dodajanje podvojenih ključev povzroči napako pri izvajanju.
Spodnji primer ilustrira rabo argumentov ključnih besed Before in After za določitev položaja predmeta, ki bo dodan.
Dim myCollection as Variant
myCollection = New Collection
myCollection.Add(item := 101, key := "first")
myCollection.Add(item := 103, key := "third")
myCollection.Add(item := 105, key := "fifth")
MsgBox myCollection.Item(2) ' 103
myCollection.Add(item := 102, key := "second", before := "third")
MsgBox myCollection.Item(2) ' 102
myCollection.Add(item := 104, key := "fourth", after := 3)
MsgBox myCollection.Item(4) ' 104
Elementom v predmetu Collection se dodeli celoštevilska vrednost indeksa, ki se začne z 1 in ustreza vrstnemu redu, po katerem so bili elementi dodatni.
Uporabite metodo Item za dostop do danega elementa z njegovim indeksom ali ključem.
oCollection.Item(index)
oCollection.Item(key)
index: celoštevilska vrednost, ki določa indeks elementa, ki bo vrnjen.
key: vrednost niza, ki določa ključ za element, ki bo vrnjen.
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "A")
myCollection.Add(item := 102, key := "B")
myCollection.Add(item := 103, key := "C")
MsgBox myCollection.Item("A") ' 101
MsgBox myCollection.Item(3) ' 103
Uporabite metodo Remove, da izbrišete elemente iz predmeta Collection.
Elemente lahko odstranite s sklicevanjem na njihove indekse ali vrednosti ključev.
oCollection.Remove(index)
oCollection.Remove(key)
index: celoštevilska vrednosti, ki določa indeks predmeta, ki ga želite odstraniti.
key:: niz, ki določa ključ elementa, ki ga želite odstraniti.
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "first")
myCollection.Add(item := 102, key := "second")
myCollection.Add(item := 103, key := "third")
MsgBox myCollection.Count ' 3
' Removes the first value
myCollection.Remove(1)
' Removes the value whose key is "third"
myCollection.Remove("third")
MsgBox myCollection.Count ' 1
Uporabite lahko zanko z ukazi For Each ... Next za iteracijo po vseh elementih predmeta Collection.
Dim myCollection as New Collection
myCollection.Add(item := 101, key := "A")
myCollection.Add(item := 102, key := "B")
myCollection.Add(item := 103, key := "C")
For Each value In myCollection
MsgBox value
Next value
Če želite odstraniti vse elemente iz predmeta Collection, pokličite metodo Remove za vsak element, kar ilustrira spodnji primer:
' Ustvari primer predmeta Collection z dvema vnosoma
Dim myCollection as New Collection
myCollection.Add(item := 10, key := "A")
myCollection.Add(item := 11, key := "B")
MsgBox myCollection.Count ' 2
' Odstrani vse elemente iz predmeta Collection
For i = myCollection.Count To 1 Step -1
myCollection.Remove(i)
Next i
MsgBox myCollection.Count ' 0