Hvordan oprettes og bruges VBA-klassemoduler? (Eksempler)

Indholdsfortegnelse

Excel VBA klassemoduler

Når vi bruger VBA, bruger vi de egenskaber og attributter, der er defineret i VBA, men hvad sker der, når vi vil oprette vores egne egenskaber og metoder og attributter, det er når vi bruger et klassemodul i VBA, så vi kan få det brugerdefineret, en klassemodul har sit eget sæt koder defineret for funktioner, egenskaber og objekter af brugeren.

Klassemoduler bruges til at oprette et objekt. Når vi siger ting, selvom det er en variabel, er det små programmer. Mens vi skriver koden, skriver vi normalt i moduler. Væsentlige moduler er, hvor vi skriver vores principper for at udføre jobbet. Vi bruger også brugerformular til at oprette grafiske brugergrænseflader.

Men hvis du ser på ovenstående billede, kan du se "Klassemodul." Jeg ved med sikkerhed, at du ikke har rørt det, før du læser dette indlæg. Du må undre dig over, hvad dette VBA-klassemodul er, når alt job kan udføres ved hjælp af vores almindelige modul.

Hvad er klassemodulet?

Klassemoduler giver en bruger mulighed for at oprette sit objekt, ligesom hvordan vi har indbyggede emner i standardmoduler som "Arbejdsark", "Arbejdsbøger", "Område" og så videre.

Som dette ved hjælp af et klassemodul kan vi oprette brugerdefinerede objekter.

Klassen har et direkte forhold til objekter. For eksempel har du et maskindiagram til at bygge en maskine, men husk at det ikke er en maskine endnu, og at du bruger dette maskindiagram, og vi kan fremstille mange maskiner sådan.

For eksempel, hvis du vil liste forskellige maskinmærker for at angive karakteristika for flere modeller.

I maskinen har vi et mærke, serienummer, maskinstyrke, enhedens farve, antal involverede motorer, motorbrændstoftype osv.… På det tekniske sprog kaldes disse "egenskaber".

Med hensyn til maskinens egenskaber kan vi starte, vi kan slukke, vi kan øge motorens hastighed, vi kan sætte pause osv … Og disse kaldes "Metoder".

Eksempel

Lad os starte bolden, fordi det altid er den kedelige ting at læse den teoretiske del op. For at indsætte et klassemodul skal du gå til indstillingsmuligheden i en grundlæggende visuel editor.

Nu kan vi se et klassemodul som nedenfor.

Dette ligner det, vi har ovenfor som et almindeligt modul. Skift navnet på klassemodulet i egenskabsvinduet. For at se egenskabsvinduet skal du trykke på F4-tasten .

Erklær nu variablen som en streng.

Uden at oprette en underprocedure i VBA er vi nødt til at erklære variablen og bruge ordet "Offentlig" ikke "Dim."

Nu kan vi få adgang til denne variabel i ethvert modul og klassemodul.

Gå nu til et almindeligt modul, og navngiv variablen.

Efter at have erklæret variablen skal vi tildele datatypen i VBA; i stedet for at indstille datatypen kan vi give navnet på klassemodulet, dvs. CM.

Ved hjælp af variablen "k" kan vi få adgang til den offentlige variabel, vi har defineret i klassemodulet, dvs. "Min værdi."

Som vi kan se i ovenstående billede viser det muligheden for variabelnavn fra klassemodulet for at tildele værdien til det.

Vis nu værdien af ​​den tildelte variabel i VBA-meddelelsesfeltet.

Kode:

Underklasseeksempel () Dim k som ny CM k.MyValue = "Hej" MsgBox k.MyValue End Sub

Kør denne kode ved hjælp af F5-tasten eller manuelt for at vise resultatet.

Klassemodul vs. objekter

I den indledende fase af klassemodulet bliver alle forvirrede med, hvad klasse er, og hvad et objekt er.

For at forstå dette skal du huske vores tidligere eksempel på et maskindiagram. Den første ting, vi har brug for for at fremstille en maskine, er, at vi først skal designe maskinen, og derefter kan flere kopier replikeres med det design.

Relater dette nu til vores klassemodul.

  • Her er klassemodulet et design. Og objekt er kopien oprettet af designet.
  • En mere interessant ting er, at vi skal bruge ordet "nyt" til at oprette et objekt fra klassemodulet.

Nedenfor er et eksempel på det samme.

En ting mere, når vi bruger indbyggede objekter som regneark, projektmapper og rækkeviddeobjekter, bruger vi ikke ordet "nyt".

For at starte proceduren med klassemodulet, skal du vide disse grundlæggende ting. I de kommende artikler vil vi se eksemplerne på det næste niveau.

Det virker vanskeligt at forstå dette; jo mere tid du bruger med et klassemodul, vil du vænne dig til det.

Interessante artikler...