Excel VBA osztály modul
A VBA osztály lehetővé teszi számunkra, hogy létrehozzuk saját Object függvényünket, amelybe bármilyen funkciót, parancssori részleteket, funkció típusokat hozzáadhatunk. Amikor a VBA-ban osztályt hozunk létre, teljesen független objektumfüggvényként viselkednek, de mindannyian össze vannak kapcsolva.
Ez segít nekünk olyan alkalmazások felépítésében, amelyek már megtalálhatók a VBA-ban és az Excel-ben. Például a pedálciklus kerék forog. A pedálok és a kerekek egyaránt a Cycle részei, de mindkettő egymástól függetlenül működik, hogy a kimenetet mozgó ciklusként adja meg.

Hogyan lehet egyéni osztályt és objektumokat létrehozni a VBA-ban?
Vegyünk egy példát 3 különböző vállalat mobiltelefonjára, amelyek az Apple, a Samsung és a Nokia, figyelembe véve e vállalatok népszerű és újonnan piacra dobott mobiltelefonjait, amelyek az iPhone X, a Samsung S8 és a Nokia 7+.
Összehasonlítjuk e mobiltelefonok néhány fontos tulajdonságát, mint például a márka, a modell, a képernyő mérete, a kamera típusa és a töltő típusa. Ezek alapvetően fontos jellemzők ezen az alapon. Leginkább bármilyen mobiltelefont hasonlítunk össze. Az alábbiakban feltérképeztük a fent tárgyalt paramétereket egy diagramban.

A Beszúrás menü VBA ablakában válassza ki az Osztálymodult az alábbiak szerint.

Megkapjuk a Class modul ablakot, amely az Option Explicit kezdetű , az alábbiak szerint.

Az Explicit opció biztosítja, hogy a változókat használatuk előtt deklarálni kell. Ha nem deklarálunk egy változót, és nem használjuk, akkor a rendszer hibát vet. Most az osztályban határozza meg a mobiltelefonok összes megvitatott paraméterét a nyilvánossággal . Ez lehetővé teszi, hogy ezek a meghatározott paraméterek bármikor, bárhol, korlátozás nélkül használhatók legyenek.
Kód:
Opció explicit 'Tulajdonságok listája Nyilvános márka mint karakterlánc Nyilvános modell mint karakterlánc nyilvános képernyőMéret: karakterlánc nyilvános kameraTípus: karakterlánc nyilvános töltőTípus: karakterlánc

Most hozzáadunk egy eltérő működési folyamatot, a mobiltelefon funkcióit és funkcióit, például a telefon indítását, a telefon kikapcsolását, a zene lejátszását, az akkumulátor töltését stb., Az egyes funkciók alkategóriájával, az alábbiak szerint. És adjon hozzá egy üzenetmezőt minden alkategória hurokba, hogy lássuk, mely módszerek futnak jelenleg.
Kód:
'Lehetséges technikák Sub MobileStarts () MsgBox "A mobil bekapcsol" End Sub
Sub MobileOff () MsgBox "A mobil kikapcsol" End Sub
Sub PlayMusic () MsgBox "Az audio rendszer jelenleg működik" End Sub
Sub BatteryCharge () MsgBox "töltő jelenleg csatlakoztatva van" End Sub

Ezzel befejeződik a Class létrehozása. Mielőtt továbblépnénk, tanácsos megváltoztatni az osztály modul nevét. Válasszon tetszőleges nevet az Ön igényeinek megfelelően, mivel mi mobilra változtatjuk .

Most egy kódot írunk egy modulba, ahol megnézzük és összehasonlítjuk az egyes mobiltelefon márkák jellemzőit és funkcióit. Ehhez hozzá kell adnunk egy modult azáltal, hogy oda megyünk a Beszúrás menü alatt, a bemutatott menü szerint.

Egy új modult nyitunk meg, amelyben az Option Explicit engedélyezve van, miközben dolgozunk és osztályt hozunk létre. Most kezdje el írni az alkategóriát az elvégzett funkciók nevére, az alábbiak szerint.

Megváltoztathatjuk a modul nevét ugyanúgy, mint az osztály esetében. Ez segít megőrizni a létrehozott VBA kód együttes identitását. Ez a tulajdonságablakokból tehető meg, az alábbiak szerint.

Már meghatároztuk az összes márkájú mobiltelefon különféle jellemzőit, funkcióit és módszereit. Most definiáljunk 3 változót bármilyen névben (lehetőleg a mobiltelefon márka nevében), és rendeljük hozzá a Mobilhoz. Kezdjük először az iPhone-val, az alábbiak szerint.

Hasonlóképpen tegye ugyanezt a mobiltelefon márka többi részén is, az alábbiak szerint.

Ezzel hozzárendeljük a létrehozott Osztályt a Mobile márka minden dimenziós változójához. Most mindegyik márka esetében végezze el ugyanazt a folyamatot az osztály hozzárendeléséhez .
Most hozzá kell rendelnünk a Mobiltelefon összes tulajdonságát és értékét. Ehhez használja a Set funkciót, és rendelje hozzá egy új mobilhoz, az alábbiak szerint.

Most nyissa meg a With-End hurok iPhone-hoz. Itt fogjuk meghatározni a mobil egyes attribútumait.

Mint láthatjuk, az iPhone márka összes meghatározott tulajdonságát a Class-ból, konkrét értékekkel, Stringként rendeltük hozzá.
Tegye ugyanezt a Samsung és a Nokia márka esetében is.

Most a DebugPrint segítségével nyomtatjuk ki az információkat az azonnali ablakba. Hasznos, ha egy kódsorban egy bizonyos változót szeretnénk látni. Az alábbiak szerint minden egyes mobilmárkához különféle funkciókat választunk.

Most hozzá a MobileStarts és MobileOff funkcionális működését, amelyhez meghatározott osztályba az egyes mobil márkák ugyanazon modul együtt az üzenet mezőbe. Itt hagyhatja ki az üzenetmezőt.

Ezzel befejeződik az osztály hozzárendelése a modulhoz. Most fordítsa le a kódot, és futtassa az F5 billentyűvel. Látni fogjuk az egyes mobilmárkák üzenetét, az alábbiak szerint.

Most, ha azt szeretné tudni, hogy milyen változókban és függvényekben milyen értékek vannak, ehhez nyissa meg a Helyi ablakot a nézet fülről, amely segít a részletek megszerzésében, amikor az alábbi kódot fordítjuk össze.

Az alábbi kód az Ön referenciájához tartozik.
Kód:
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.
- A teszteléshez használhat kisebb technikákat vagy funkciókat a Class létrehozásához. Ez később módosítható, amikor további termékfunkciókat és technikákat kívánunk hozzáadni.
- Mindig vegye figyelembe a hasonló vagy ugyanazokat a tulajdonságokat, amikor befejezzük az osztályt és hozzárendeljük egy modulhoz. Ez segít a különböző termékek jellemzőinek összehasonlításában.