Excel VBA Class Module

Klassemodul i VBA kan defineres som modulen som hjelper deg med å lage dine egne objekter med dine egne egenskaper og metoder som arbeidsark og rekke mål for Excel.

Enkelt sagt med hjelp VBA-klassemodulen, kan vi lage objekter med egne egenskaper. Før du går til å lage en klassemodul og dens objekter i VBA, er det lurt å forstå konseptet klasse og objekt. Tenk på et virkelighetseksempel for å forstå hva som er en klasse og hva som er et objekt og dets forhold.

Hvis vi for eksempel tar en bygningsplan eller blåkopi av et bygg, kan vi ved hjelp av en byggeplan konstruere ikke bare en bygning, men vi kan bruke den samme planen og kan konstruere flere bygninger forskjellige steder. De kan variere i størrelse på rom eller takhøyde osv. Men bygningens egentlige egenskaper forblir de samme som det bør være en kjeller, dører, søyler, tak osv.

På samme måte, hvis du tar en bilstruktur eller -modell, kan vi produsere flere duplikater til den. En bil vil ha egenskaper som et antall hjul, farge, kraft osv. Noen av egenskapene kan variere fra bil til bil, men hovedkonfigurasjonen vil forbli den samme.

For å gjøre det tydeligere kan vi definere slik:

  • Klasse: Det er en blåkopi av en ting som er med på å skape et objekt.
  • Objekt: Faktisk eksistens av en ting.

Hvordan sette inn en klassemodul i Excel VBA?

Nedenfor er de forskjellige eksemplene for å sette inn en klassemodul i Excel ved hjelp av VBA-kode.

Du kan laste ned denne VBA klassemodul Excel-malen her - VBA klassemodul Excel-mal

Excel VBA Class Module - Eksempel # 1

Nedenfor er de forskjellige trinnene for å sette inn klassemodulen ved å bruke VBA-kode i Excel.

Trinn 1: Gå til " Utvikler " -menyen på toppen og klikk på Visual Basic på venstre side.

Trinn 2: For å lage en klassemodul må vi sette inn en klassemodul i VBA. Klikk på Sett inn- rullegardinmenyen på toppen. Velg en klassemodul fra det .

Nå er en klassemodul satt inn på venstre side i VBA som vist på skjermbildet nedenfor.

Som diskutert tidligere er en klassemodul en blåkopi som vi vil lage objekter med. Så vi må definere noen få variabler og metoder som vil være tilgjengelige for alle objekter.

Trinn 3: Endre navnet på klassemodulen i henhold til kravene dine, her endret jeg som Blueprint

Trinn 4: Nå må vi definere variabler og metoder.

Kode:

 Alternativ Eksplisitt Offentlig legg til som heltall Offentlig pro Som heltal Offentlig x Som heltall Offentlig y Som heltall 

Som vist på skjermbildet ovenfor, start først med eksplisitt alternativ. Hvorfor alternativ eksplisitt? Det vil kaste en feil hvis vi bruker noen variabel i programmet som ikke er definert, så vi bør definere alle variabler eksplisitt. Her definerer vi fire variabler add, pro, x og y. Alle variabler er definert som offentlige, fordi det bare er tilgang til disse variablene av andre moduler.

Trinn 5: Til nå definerte vi variabler nå for å definere metoder eller funksjoner.

Kode:

 Alternativ Eksplisitt Offentlig legg til som heltall Offentlig pro Som Heltall Offentlig x Som Heltall Offentlig y Som Heltall Undersum () add = x + y MsgBox (legg) Slutt Under 

Jeg definerte en enkel metodesum (), du kan definere komplekse underprogrammer per krav. I sum () undermetode definerte vi hvordan vi skal utføre tilleggsoperasjon og hvor vi skal lagre den verdien og deretter til slutt vise resultatet i en meldingsboks.

Trinn 6: En klassemodul er opprettet nå er det på tide å opprette en normal modul for å bruke klassens blåkopi. Sett derfor inn en modul på samme måte som vi la inn en klassemodul.

Trinn 7: Som standard vil modulnavnet være modul1 vi kan endre om vi vil. Skriv koden i modul1.

Kode:

 Sub-matematikk () Dim obj Som New Blueprint obj.x = 5 obj.y = 6 obj.sum End Sub 

Her skriver vi en underprogrammatematikk (). I det opprettet vi et objekt med navn obj som det samme som en klasseplanlegging. Det er grunnen til at vi har definert på en slik måte “obj som ny blåkopi” som betyr duplisering av blåkopi og navnet er obj.

I dette programmet definerte vi ikke x og y, men direkte tilordne verdiene til x og y fordi disse allerede er definert i en klassemodul og obj er duplisering av det. Derfor vil det ha disse variablene, men for å kalle dem bør vi bruke et objekt.variabelt navn.

Obj.x = 5 gjennomsnitt, verdi 5 vil bli lagret i x-variabel.

Obj.y = 6 middelverdi 6 vil bli lagret i y-variabelen.

Nå kaller du metodene som er definert i klassemodulen ved å bruke objektnavn obj.

Obj.sum () vil utføre tilleggsoperasjonen som definert i klassemodulen. I klassemodulen definerte vi som x + y og et objekt, vi definerte verdiene for x og y derav vil det ta verdiene og vil utføre beregningen og lagre resultatet i add som er en heltallstype. I det siste trinnet vil det vise resultatet i meldingsboksen.

Trinn 8: Kjør modulen1 ved å trykke på F5- tasten eller ved å klikke på Spill- knappen.

Trinn 9: Velg makronavnet og klikk på Kjør- alternativet.

Resultatene vises som nedenfor.

Excel VBA Class Module - Eksempel # 2

Følg trinnene nedenfor:

Trinn 1: Nå legger du til en annen metode som heter "mul" for å utføre multiplikasjonsoperasjoner. Resultatet skal lagres i cellene (5, 5) på arket1.

Kode:

 Sub mul () pro = x * y Ark1.Celler (5, 5) = pro End Sub 

I ovennevnte mul () -metode multipliserte vi x og y, og resultatet lagres i “pro” som er en heltal datatype.

Trinn 2: Gå til modul1 og kall denne mul-metoden ved å bruke objektet obj som nedenfor.

Kode:

 Sub math1 () Dim obj Som New Blueprint obj.x = 5 obj.y = 6 obj.mul End Sub 

Trinn 3: Trykk på F5-tasten for å kjøre modulen. Gå til ark1 og sjekk at resultatet blir vist som nedenfor.

I forrige eksempel viste vi resultater i meldingsboksen, men i den andre metoden viste vi i excel. Så hvis vi erklærer variablene og metodene i klassemodulen, kan vi bruke dem i andre moduler ved hjelp av et objekt uten å gjenta koden. Håper du har forstått hvordan du setter inn klassemodulen i Excel VBA og hvordan du oppretter et objekt for den.

Ting å huske

  • Det anbefales alltid å bruke alternativet eksplisitt når du forbereder en klassemodul fordi det kan være feilfeil når du bruker variabler i VBA.
  • Hvis vi ikke nevner arknummer for visning av resultater, vil det velge det aktive arket automatisk.
  • Bruk offentlig nøkkelord mens du starter variablene slik at variablene kan få tilgang til av andre moduler.
  • Du kan ringe variablene eller metodene bare etter at du har opprettet objektet. opprett derfor et objekt for klassen, og ring deretter variablene og metodene.

Anbefalte artikler

Dette er en guide til VBA Class Module. Her diskuterer vi hvordan du setter inn klassemodul i Excel ved hjelp av VBA-kode sammen med noen praktiske eksempler og nedlastbar Excel-mal. Du kan også gå gjennom andre foreslåtte artikler -

  1. VBA Finn og erstatt
  2. Excel Sum etter farge
  3. VBA-sjekkfil eksisterer
  4. Excel Delete Pivot Table
  5. VBA-kode | eksempler

Kategori: