VBA tüübi avaldus (näide) - Kuidas deklareerida VBA tüübiga muutujaid?

Lang L: none (table-of-contents)

Tüüp on lause VBA-s, mida kasutatakse DIM-funktsiooniga sarnaste muutujate määratlemiseks, seda kasutati kasutaja määratud tasemel, kus meil on muutuvas üks või mitu väärtust, tüübilause jaoks on kaks nomenklatuuri, mis on avalik või privaatne nende kasutamine on valikuline, kuid muutuja nimi ja elemendi nimi on kohustuslikud.

Mis on Exceli VBA tüüpi lause?

VBA tüübi lauset kasutatakse muutujate määratlemiseks ühe rühma nime all, kusjuures igale muutujale on määratud erinevad andmetüübid. See aitab meil rühmitada mitu muutujat ühe objekti alla, et neid kasutada määratletud tüübinime all.

Tüübi lause deklareerimisega saame vältida klassi moodulite kasutamist VBA-s. See ei vaja stringimooduleid, kuna selle saab kinnitada juba olemasolevatesse moodulitesse, mis võib säästa meie ruumi.

Ühes varasemas artiklis oleme arutanud „VBA ENUMi”, et rühmitada kõik muutujad ühe grupi nime alla.

Näiteks kui teil on grupi nimi nimega „Mobiilid“, on meil grupi liikmeid nagu „Redmi, Oppo, Vivo, Samsung, LG ja jne …“. Nii võime Enumi avalduse grupeerida koos nende vastavate väärtustega.

Enum Mobiles

Redmi = 12000

Oppo = 18000

Vivo = 18000

Samsung = 25000

LG = 15000

Lõpeta Enum

Nii oleme selles artiklis loonud loendused. Probleem Enumi lausega, kuna see mahutab ainult PIKKAT tüüpi andmet. Erinevate andmetüüpidega muutujate rühmitamiseks võime kasutada lauset VBA TYPE. Selles artiklis näitame teile, kuidas VBA-s Type-lauset koostada. Loe edasi …

Süntaks

Enne muutujate deklareerimist käsu Tüüp abil vaadake süntaksit:

Tüübi rühma nimi   (muutuja 1) muutuja andmetüübina   (muutuja 2) muutuja andmetüübina   (muutuja 3) muutuja andmetüübina   (muutuja 4) muutuja andmetüübina   (muutuja 5) muutuja andmetüübi  lõppu

Seda tüüpi avaldusi saab deklareerida nii moodulis kui ka mooduli ülaosas, nagu meie globaalsed muutujad VBA-s.

VBA tüüp mahutab objektimuutujaid. See mahutab massiive. Kuid see ei saa sisaldada protseduure, funktsioone.

Tippige avalduse näide VBA-s

Olgu, laseme muutujate deklareerimise käsku Tüüp. Näeme sama näidet mobiilsete kaubamärkide deklareerimisest nagu see, mida oleme VBA Enumis kasutanud.

1. samm: alustage mooduli ülaosas sõna „Type” ja andke rühmale Type nimi.

Kood:

Tüüp MobileBrands End Type

2. samm: mis on mobiilibrändides asjad, mida me tavaliselt näeme. Kõigepealt näeme nime, nii et deklareerige muutuja nimeks String.

Kood:

Sisestage stringi lõpu tüübiks MobileBrands Name

3. samm: pärast nime kontrollime käivituskuupäeva. Deklareerige muutuja LaunchDate kuupäevana.

Kood:

Tippige MobileBrands nimi stringina LaunchDate kuupäeva lõpu tüübiks

4. samm: järgmine asi on kontrollida mälumahtu. Muutuja deklareerimiseks salvestusarvuna täisarv.

Kood:

Tippige MobileBrands nimi stringina LaunchDate kuupäeva salvestusena täisarvu lõpuni

5. samm: järgmine asi on kontrollida RAM-i mahtu.

Kood:

Sisestage mobiilibrändide nimi stringina Käivituskuupäev Kuupäevade salvestusruum RAM-ina täisarvu lõpuni

6. samm: lõpuks kontrollime hinda.

Kood:

Sisestage mobiilibrändide nimi stringina Käivituskuupäev Kuupäeva salvestusena täisarvu RAM-i täisarvuna Pika otsa tüübina

Nüüd alamprotseduuris, deklareerides muutuja tüübiks, nimeks, st MobileBrands, pääseme juurde kõigile neile muutuja andmetüüpidele.

Step 7: Create a subprocedure.

Code:

Sub Type_Example1() End Sub

Step 8: Now declare the variable “Mobile” as MobileBrnads.

Code:

Sub Type_Example1() Dim Mobile As Mob End Sub

Step 9: Now, with the variable name “Mobile,” we can access all the variables of “MobileBrands.”

Code:

Step 10: Now store each value like the below.

Code:

Type MobileBrands Name As String LaunchDate As Date Storage As Integer RAM As Integer Price As Long End Type Sub Type_Example1() Dim Mobile As MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub

Finally, show the result in a VBA message box like the below one.

Code:

Sub Type_Example1() Dim Mobile As MobileBrands Mobile.Name = "Redmi" Mobile.LaunchDate = "10-Jan-2019" Mobile.Storage = 62 Mobile.RAM = 6 Mobile.Price = 16500 MsgBox Mobile.Name & vbNewLine & Mobile.LaunchDate & vbNewLine & _ Mobile.Storage & vbNewLine & Mobile.RAM & vbNewLine & Mobile.Price End Sub

Now run the code using the F5 key or manually and see the result in a message box.

Like this, we can use the “VBA Type” statement to define new data types in the subprocedure.

VBA Types vs. VBA Class

VBA Type is often compared to VBA Class modules. There are certain differences between them. Below are the common differences.

  • Erinevus 1: VBA tüüp võib sisaldada ainult avalikke muutujaid. VBA klass võib sisaldada nii avalikke kui ka privaatseid muutujaid.
  • Erinevus 2: VBA tüüp ei tohi sisaldada protseduure ja funktsioone. VBA klass sisaldab neid mõlemaid koos omadustega.
  • Erinevus 3: VBA tüübi saab deklareerida mis tahes moodulis ja protseduuris. VBA klassi saab kuulutada ainult spetsiaalsetes klassi moodulites.

Huvitavad Artiklid...