Razred VBA - Kako ustvariti razred in predmete po meri v VBA?

Modul razreda Excel VBA

Razred VBA nam omogoča, da ustvarimo lastno funkcijo Objekt, v katero lahko dodamo kakršne koli funkcije, podrobnosti ukazne vrstice, vrsto funkcije. Ko v VBA ustvarimo Class, delujejo kot popolnoma neodvisna objektna funkcija, vendar so vsi povezani.

To nam pomaga pri izdelavi aplikacij, kakršne so že v VBA in Excelu. Na primer, kolo vrtenja pedala se vrti. Pedala in kolesa sta sicer del cikla, vendar oba delujeta neodvisno, da dobita izhod kot gibljiv cikel.

Kako ustvariti razred in predmete po meri v VBA?

Oglejmo si primer mobilnih telefonov treh različnih podjetij, to so Apple, Samsung in Nokia, upoštevajoč priljubljene in na novo predstavljene mobilne telefone teh podjetij, kot so iPhone X, Samsung S8 in Nokia 7+.

Primerjali bomo nekatere pomembne funkcije teh mobilnih telefonov, kot so znamka, model, velikost zaslona, ​​vrsta kamere in vrsta polnilca. To so v bistvu pomembne lastnosti na tej podlagi. Večinoma primerjamo kateri koli mobilni telefon. Spodaj smo zgoraj obravnavane parametre preslikali v grafikon.

V oknu VBA v meniju Vstavi izberite modul razreda, kot je prikazano spodaj.

Dobili bomo okno modula Class, ki se začne z Option Explicit, kot je prikazano spodaj.

Možnost Izrecno zagotavlja, da je treba spremenljivke deklarirati pred njihovo uporabo. Če ne razglasimo nobene spremenljivke in jo uporabimo, bo sistem sprožil napako. Zdaj v razredu določite vse obravnavane parametre merjenja mobilnih telefonov z javnostjo . Tako bodo ti opredeljeni parametri odprti za uporabo kadar koli in kjer koli, brez kakršnih koli omejitev.

Koda:

Možnost Izrecno 'Seznam lastnosti Javna znamka kot niz Javni model kot niz Javni zaslon Velikost kot niz Javna kameraTip kot niz Javni polnilnikTip kot niz

Zdaj bomo dodali drugačen postopek delovanja, funkcije in funkcije mobilnega telefona, na primer zagon telefona, izklop telefona, predvajanje glasbe, polnjenje baterije itd. S podkategorijo za vsako funkcijo, kot je prikazano spodaj. V vsako zanko podkategorije dodajte polje s sporočilom, da bomo lahko videli, katere metode se trenutno izvajajo.

Koda:

'Možne tehnike Sub MobileStarts () MsgBox "Mobile is Turn On On" End Sub
Sub MobileOff () MsgBox "Mobilni se izklopi" Konec Sub
Sub PlayMusic () MsgBox "Zvočni sistem trenutno deluje" Konec Sub
Sub BatteryCharge () MsgBox "Polnilnik je trenutno priključen" Konec Sub

S tem je končano ustvarjanje razreda. Preden nadaljujemo, svetujemo, da spremenite ime predavalnega modula. Izberite poljubno ime po vaši zahtevi, saj ga spremenimo v mobilno .

Zdaj bomo v modul zapisali kodo, kjer bomo videli in primerjali lastnosti in funkcije posamezne znamke mobilnega telefona. Za to moramo dodati modul tako, da gremo tja v meni Vstavi, kot je prikazano.

Dobili bomo nov modul, odprt z omogočeno eksplicitno možnostjo, ko delamo in ustvarjamo razred. Zdaj začnite pisati podkategorijo v ime izvedenih funkcij, kot je prikazano spodaj.

Ime modula lahko spremenimo tako kot za razred. To nam pomaga ohranjati povezano identiteto ustvarjene kode VBA. To lahko storite iz oken lastnosti, kot je prikazano spodaj.

Določili smo že različne funkcije, funkcije in metode vseh znamk mobilnih telefonov. Zdaj pa določimo 3 spremenljivke v poljubnem imenu (po možnosti v imenu znamke mobilnega telefona) in jo dodelimo Mobile. Najprej začnimo z iPhoneom, kot je prikazano spodaj.

Podobno storite enako za preostalo znamko mobilnega telefona, kot je prikazano spodaj.

S tem ustvarjenemu razredu dodelimo vsako dimenzijsko spremenljivko znamke Mobile. Zdaj za vsako znamko izvedite enak postopek dodeljevanja razreda .

Zdaj moramo dodeliti vse funkcije mobilnega telefona in njegovo vrednost. Za to uporabite funkcijo Set in jo dodelite novemu mobilniku, kot je prikazano spodaj.

Zdaj odprite zanko With-End za iPhone. Tu bomo opredelili vsak atribut mobilnega telefona.

Kot lahko vidimo, smo vse opredeljene lastnosti znamke iPhone iz razreda dodelili Stringu.

Naredite isto za znamko Samsung in Nokia.

Zdaj bomo za tiskanje informacij v neposrednem oknu uporabili DebugPrint . Koristno je, če želimo v vrstici kode videti določeno spremenljivko. Za vsako blagovno znamko Mobile bomo izbrali različne funkcije, kot je prikazano spodaj.

Zdaj dodelite funkcionalni operaciji MobileStarts in MobileOff , ki smo jo opredelili v razredu, vsaki od blagovnih znamk mobilnih naprav v istem modulu skupaj s poljem Message. Tu lahko preskočite polje za sporočila.

S tem je dodeljevanje razreda modulu zaključeno. Zdaj prevedite kodo in zaženite s tipko F5. Videli bomo sporočilo vsake mobilne znamke, kot je prikazano spodaj.

Now, if you want to know what variables and functions have what kind of values in it, for that open the Local window from the view tab, which will help us getting the details when we compile the code as shown below.

The below code is for your Reference.

Code:

Sub VBA_Class() Dim iPhone As Mobile Dim Samsung As Mobile Dim Nokia As Mobile Set iPhone = New Mobile With iPhone .Brand = "iPhone" .Model = "iPhone X" .ScreenSize = "6.5 Inches" .CameraType = "12 MegaPixel" .ChargerType = "Regular" End With Set Samsung = New Mobile With Samsung .Brand = "Samsung" .Model = "Samsung S8" .ScreenSize = "5.8 Inches" .CameraType = "12 MegaPixel" .ChargerType = "Power" End With Set Nokia = New Mobile With Nokia .Brand = "Nokia" .Model = "Nokia 7+" .ScreenSize = "6 Inches" .CameraType = "12 MegaPixel" .ChargerType = "Power" End With Debug.Print "Phone Screen Size is: " & iPhone.ScreenSize Debug.Print "Camera of Samsung is: " & Samsung.CameraType Debug.Print "Charger Type is: " & Nokia.ChargerType iPhone.MobileStarts iPhone.MobileOff MsgBox iPhone.Model Samsung.MobileStarts Samsung.MobileOff MsgBox Samsung.Model Nokia.MobileStarts Nokia.MobileOff MsgBox Nokia.Model End Sub

Pros

  • We can build our own application with a lot of features.
  • Once Class is created, we can update any feature, anytime whenever we require.
  • If we update the code, then also it won’t cause any problem in other parts of the Class.
  • We can test the individual part of the application as per our needs.

Cons

  • Initially, it takes a lot of time to create a class in VBA.
  • People who are new to VBA will find the class very difficult to apply.

Things to Remember

  • As the code can be huge and big, so it’s better to compile the code step-by-step. By doing this, we would avoid the N number of errors, which will be difficult for us to debug and resolve.
  • We can ignore the use of Message Box if you are taking and testing the above-written code.
  • Za testiranje lahko pri ustvarjanju razreda uporabite manj tehnik ali funkcij. To lahko kasneje spremenimo, ko želimo dodati več funkcij in tehnik izdelka.
  • Vedno upoštevajte podobne ali enake funkcije, ko zaključimo razred in ga dodelimo modulu. To nam bo pomagalo pri primerjavi lastnosti različnih izdelkov.

Zanimive Članki...