Excel VBA indsamlingsobjekt

Vi har set VBA Dictionary og VBA Array begge har en lignende forbindelse med VBA Collection. I VBA Collection kan vi oprette vores egen samling af gruppe og give varen og nøglen for at få den værdi, der er gemt under den. Mens vi i VBA Dictionary brugt til at oprette selve ordbogen i VBA, som skaber vores egen ordbog, der har definition af ord og værdi, som normal ordbog har. Og det samme i VBA Array også, hvor vi plejede at oprette et samleobjekt med begrænset størrelse.

Fordelen ved VBA Collection er, at vi ikke behøver at udvide størrelsen på et objekt, som vi definerer her. Uanset hvilket objekt der oprettes i VBA Collection har ingen begrænsninger. Og vi behøver ikke at ændre størrelsen på et objekt, som om vi tror, ​​det kræver.

Sammen med oprettelsen af Tilføj samling-objekt kan vi også bruge Count, Item og Fjern samling-objekter.

Sådan oprettes samleobjekt i Excel VBA?

Nedenfor er de forskellige eksempler til at oprette samleobjekt i Excel ved hjælp af VBA-kode.

Du kan downloade denne VBA Collection Excel-skabelon her - VBA Collection Excel Template

Excel VBA-samling - eksempel # 1

I dette eksempel vil vi se, hvordan man opretter en objektsamling i VBA. Følg nedenstående trin for dette:

Trin 1: Gå til VBA-vinduet, under fanen Indsæt menu vælg Modul som vist nedenfor.

Trin 2: Skriv underkategorien til VBA Collection med samme navn, eller vi kan vælge ethvert andet navn efter vores bekvemmelighed.

Kode:

 Sub Excel_Collection1 () End Sub 

Trin 3: Definer nu en variabel som Samling i ethvert navn som vist nedenfor.

Kode:

 Sub Excel_Collection1 () Dim ColObject As Collection End Sub 

Vi kan vælge ethvert ord, tekst eller navn til at definere en variabel, men det anbefales at definere det i processen med at udføre funktion først.

Trin 4: Indstil den definerede variabel som Ny samling. Dette vil hjælpe med at aktivere og indstille det allerede definerede objekt som Collection til New Collection.

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling slut sub 

Trin 5: Vi har set i beskrivelsen af ​​forskellige samleobjekter som Tilføj, Ite m, tæl og fjern . Nu vil vi bruge alle disse objekter til lagring af nyt indhold. For det første tildeler vi ADD til den definerede variabel ColObject .

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj slutningssub 

Trin 6: Nu under ITEM vælger vi et sekvensnummer, der kan være hvad som helst. Her vælger vi det som 1.

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj enhed: = 1, End Sub 

Trin 7: I Syntax of VBA Collection skal vi indtaste den Nøgle, som vi kan tildele ITEM til. Her kan vi også vælge alt, hvad der skal tilføjes i VBA-lageret. Vi har overvejet ordet Newton her.

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj enhed: = 1, nøgle: = "Newton" End Sub 

Trin 8: Vi kan springe over for og efter-delen af ​​syntaks. Derefter tildeler vi nøglen til en samling-variabel.

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj vare: = 1, nøgle: = "Newton" ColResult = ColObject ("Newton") End Sub 

Trin 9: Brug en meddelelsesboks til at se den værdi, der er gemt i samlingsobjektvariablen.

Kode:

 Sub Excel_Collection1 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj vare: = 1, nøgle: = "Newton" ColResult = ColObject ("Newton") MsgBox ColResult End Sub 

Trin 10: Kompiler nu koden og kør den ved at klikke på knappen Afspil under menulinjen.

Vi får beskeden som 1. Hvilket betyder, at for Newton-nøglen er varen placeret i 1. position.

Excel VBA-samling - eksempel # 2

Der er en anden metode eller måde, hvorpå vi kan se, hvilket varenummer der er tildelt hvilken nøgle. Vi kan også tælle antallet af nøgler, der er udfyldt i VBA Collection-objekt. Denne proces svarer ret til den proces, vi har set i eksempel-1. Følg nedenstående trin for dette:

Trin 1: Skriv underkategorien til VBA Collection som vist nedenfor.

Kode:

 Sub Excel_Collection2 () End Sub 

Trin 2: Overvej den samme variabel, som vi har set i eksempel-1 som Samling, og indstil den som Ny samling som ColObject.

Kode:

 Sub Excel_Collection2 () Dim ColObject Som samling Sæt ColObject = Ny samling slut sub 

ColObject er den eneste variabel her i dette eksempel ved hjælp af den hjælp, vi ser antallet eller sekvensen for definere element og nøgle.

Trin 3: Tildel nu ADD-funktionen til det definerede samling-objekt og vælg en værdi som dit valg. Her vælger vi 10.

Kode:

 Sub Excel_Collection2 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj 10 End Sub 

Trin 4: Tilsæt ligeledes 2 eller 3 flere samleobjekter som vist nedenfor.

Kode:

 Sub Excel_Collection2 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj 10 ColObject.Tilføj 20 ColObject.Tilføj 30 End Sub 

Trin 5: For at kende antallet af poster, der er brugt i Collection Object, bruger vi Debug print.

Kode:

 Sub Excel_Collection2 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj 10 ColObject.Tilføj 20 ColObject.Tilføj 30 Debug.Print End Sub 

Det største pluspunkt med at bruge Debug-udskrivning her i stedet for meddelelsesfeltet er, at vi ville være i stand til at få optællingen sammen med fejlen, hvis der er nogen. For enhver fejl får vi et output som nul, og for den korrekte proces får vi den aktuelle værdi.

Trin 6: For at få antallet af variabel ColObject, bruger vi Count-funktion, som er delen af ​​en indbygget funktion på listen.

Kode:

 Sub Excel_Collection2 () Dim ColObject Som samling Sæt ColObject = Ny samling ColObject.Tilføj 10 ColObject.Tilføj 20 ColObject.Tilføj 30 Debug.Print ColObject.Count End Sub 

Trin 7: Fra menuindstillingen Vis skal du vælge det øjeblikkelige vindue som vist nedenfor. Eller vi kan bruge en genvejstast som Ctrl + G for at få dette vindue.

Dette er det sted, hvor vi ser output ved hjælp af Debug-udskrivning.

Trin 8: Kompiler nu koden og kør den ved at klikke på knappen Afspil under menulinjen. I det umiddelbare vindue ser vi antallet af samlede objektsamlinger som 3 .

For nu at teste, om det opnåede antal er korrekt eller ej, sletter vi en række samleobjekter eller konverterer det til tekst ved at placere apostrophe (') og igen køre koden.

Vi får det opdaterede antal som 2, hvilket er antallet af samleobjekter 10 og 20 varenummer. Og vi kan bemærke, at den tredje linje med samleobjekt er farvet som grøn, og dette er tegnet på at få kode konverteret til tekst.

Fordele ved Excel VBA Collection

  • Vi behøver ikke at ændre størrelsen på det objekt, vi definerede.
  • Vi kan bruge forskellige Collection-objekter, der er indbygget i excel VBA Collection. Disse objekter ses ikke i andre funktioner, såsom VBA Dictionary eller VBA Array.
  • Ved VBA Collection kan vi også enhver type kunde- eller produktdatabase.

Ting at huske

  • Det anbefales at bruge Debug print i stedet for Message Box. På denne måde ville vi være i stand til at se fejlen og rette den.
  • Ved VBA Collection kan vi forskellige typer objekter og tilføje en hvilken som helst størrelse af data.
  • I funktionen Objektobjekt kan vi definere et vilkårligt antal efter vores valg. Det kan være produktkode, sekvens eller pris, som vi ønsker at se.
  • Gemme filen i Macro aktivere excel giver os mulighed for at beholde koden til yderligere.

Anbefalede artikler

Dette er en guide til VBA Collection. Her diskuterer vi, hvordan man opretter Collection-objekt i Excel ved hjælp af VBA-kode sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -

  1. Vejledning til brug af VBA Array-længde
  2. Sådan beregnes rækkevidde i Excel?
  3. Tutorials om VBA-celler
  4. PowerPivot i Excel

Kategori: