Excel VBA-klassmoduler
När vi använder VBA använder vi de egenskaper och attribut som definierats i VBA men vad händer när vi vill skapa våra egna egenskaper och metoder och attribut, det vill säga när vi använder en klassmodul i VBA så att vi kan få den användardefinierad, en klassmodulen har sin egen uppsättning koder som definierats för funktioner, egenskaper och objekt av användaren.
Klassmoduler används för att skapa ett objekt. När vi säger objekt, även om det är en variabel, är det små program. När vi skriver koden skriver vi vanligtvis i moduler. Viktiga moduler är där vi skriver våra principer för att göra jobbet. Vi använder också användarformulär för att skapa grafiska användargränssnitt.

Men om du tittar på bilden ovan kan du se "Klassmodul." Jag vet med säkerhet att du inte har rört det förrän du läser det här inlägget. Du måste undra vad som är den här VBA-klassmodulen när allt jobbet kan göras med hjälp av vår vanliga modul.
Vad är klassmodulen?
Klassmoduler tillåter en användare att skapa sitt objekt precis som hur vi har inbyggda objekt i standardmoduler som "Arbetsblad", "Arbetsböcker", "Räckvidd" och så vidare.
Så här med hjälp av en klassmodul kan vi skapa anpassade objekt.
Klassen har en direkt relation med objekt. Till exempel har du ett maskindiagram för att bygga en maskin men kom ihåg att det inte är en maskin ännu och använder det här maskindiagrammet, och vi kan göra många maskiner så.
Till exempel om du vill lista olika maskinmärken för att lista egenskaperna hos flera modeller.
I maskinen har vi ett varumärke, serienummer, maskinstyrka, enhetens färg, antal motorer som är inblandade i den, motorbränsletyp etc. … På tekniskt språk kallas dessa ”egenskaper”.
När det gäller maskinens egenskaper kan vi starta, vi kan stänga av, vi kan öka motorns hastighet, vi kan pausa osv … Och dessa kallas "Metoder".
Exempel
Låt oss börja rulla eftersom det alltid är tråkigt att läsa upp den teoretiska delen. För att infoga en klassmodul, gå till alternativet infoga i en grundläggande visuell redigerare.

Nu kan vi se en klassmodul som nedan.

Detta ser ut som det vi har ovan som en vanlig modul. Ändra klassmodulens namn i egenskapsfönstret. För att se egenskaperfönstret, tryck på F4-tangenten .

Förklar nu variabeln som en sträng.

Utan att skapa en delprocedur i VBA måste vi deklarera variabeln och använda ordet "Public" inte "Dim."
Nu kan vi komma åt denna variabel i valfri modul och klassmodul.
Gå nu till en vanlig modul och namnge variabeln.

Efter att ha deklarerat variabeln måste vi tilldela datatypen i VBA; istället för att ställa in datatypen kan vi ge klassmodulens namn, dvs CM.

Med variabeln "k" kan vi komma åt den offentliga variabeln som vi har definierat i klassmodulen, dvs "Mitt värde."

Som vi kan se i bilden ovan visar den alternativet variabelnamn från klassmodulen för att tilldela värdet till den.

Visa nu värdet på den tilldelade variabeln i meddelandefältet VBA.
Koda:
Underklass_exempel () Dim k som ny CM k.MyValue = "Hej" MsgBox k.MyValue End Sub

Kör den här koden med F5-tangenten eller manuellt för att visa resultatet.

Klassmodul vs. objekt
I början av klassmodulen blir alla förvirrade med vad klass är och vad ett objekt är.
För att förstå detta, kom ihåg vårt tidigare exempel på ett maskindiagram. Det första vi behöver för att producera en maskin är att vi måste designa maskinen först, och sedan kan flera kopior replikeras med den designen.
Relatera detta nu till vår klassmodul.
- Här är klassmodulen en design. Och objekt är kopian som skapats av designen.
- En annan intressant sak är att vi måste använda ordet ”nytt” för att skapa ett objekt från klassmodulen.
Nedan följer ett exempel på detsamma.

En sak till när vi använder inbyggda objekt som kalkylblad, arbetsböcker och intervallobjekt, vi använder inte ordet "nytt".
För att börja förfarandet med klassmodulen, dessa grundläggande saker du borde veta. I de kommande artiklarna kommer vi att se exemplen på nästa nivå.
Det verkar svårt att förstå detta; ju mer tid du spenderar med en klassmodul kommer du att vänja dig vid den.