VBA Type Statement (Eksempel) - Hvordan erklære variabler med VBA-type?

Type er en uttalelse i VBA som brukes til å definere variabler som ligner på DIM-funksjonen, den brukes på det brukerdefinerte nivået der vi har en eller flere verdier i en variabel, det er to nomenklaturer for typeposisjon som er offentlig eller privat, men disse er valgfrie å bruke, men variabelnavnet og elementnavnet kreves.

Hva er typeforklaring i Excel VBA?

VBA Type Statement brukes til å definere variabler under ett enkelt gruppenavn med forskjellige datatyper tilordnet hver variabel. Dette hjelper oss med å gruppere flere variabler under et enkelt objekt for å bruke dem under det definerte typenavnet.

Ved å erklære Type-setningen kan vi unngå å bruke klassemoduler i VBA. Det trenger ingen strengmoduler fordi det kan bygges inn i allerede eksisterende moduler, noe som kan spare oss for plass.

I en av de tidligere artiklene har vi diskutert “VBA ENUM” for å gruppere alle variablene under det ene gruppenavnet.

For eksempel, hvis du har et gruppenavn som heter "Mobiles", har vi gruppemedlemmer som "Redmi, Oppo, Vivo, Samsung, LG og etc …" Så Enum-utsagnet vi kan gruppere sammen med deres respektive verdier.

Enum Mobiles

Redmi = 12000

Oppo = 18000

Vivo = 18000

Samsung = 25000

LG = 15000

Slutt Enum

Som dette har vi opprettet oppføringer i den artikkelen. Problemet med Enum-setningen, da den bare kan inneholde en LANG datatype. For å gruppere variabler med forskjellige datatyper, kan vi bruke "VBA TYPE Statement." I denne artikkelen vil vi vise deg hvordan du konstruerer en Type-uttalelse i VBA. Les videre…

Syntaks

Før du deklarerer variabler ved å bruke Type-setning, ta en titt på syntaksen:

Skriv gruppenavn   (variabel 1) som variabel datatype   (variabel 2) som variabel datatype   (variabel 3) som variabel datatype   (variabel 4) som variabel datatype   (variabel 5) som variabel datatype  sluttype

Disse typer utsagn kan erklæres både i modulen og på toppen av modulen, som våre globale variabler i VBA.

VBA Type kan inneholde objektvariabler. Det kan holde matriser. Den kan imidlertid ikke inneholde prosedyrer, funksjoner.

Type Statement Eksempel i VBA

Ok, la oss starte prosessen med å erklære variabler med Type-setningen. Vi vil se det samme eksemplet på å erklære mobilmerker som hvordan vi har brukt i VBA Enum.

Trinn 1: På toppen av modulen, start ordet “Type” og gi et navn til gruppetypen.

Kode:

Skriv MobileBrands Sluttype

Trinn 2: Hva er de tingene vi vanligvis ser i mobilmerker? Vi ser Navn først, så erklær variabelen som Navn som streng.

Kode:

Skriv inn navnet på MobileBrands som strengens sluttype

Trinn 3: Etter navnet sjekker vi lanseringsdatoen. Erklær variabelen som LaunchDate som dato.

Kode:

Skriv inn MobileBrands navn som streng LaunchDate som dato for sluttdato

Trinn 4: Den neste tingen er at vi sjekker lagringskapasiteten. Å erklære variabelen som lagring som heltal.

Kode:

Skriv inn navn på MobileBrands som streng LaunchDate som datalagring som sluttallstype

Trinn 5: Den neste tingen er at vi sjekker RAM-kapasitet.

Kode:

Skriv inn navn på MobileBrands som streng LaunchDate som datalagring som RAM som heltall sluttype

Trinn 6: Til slutt sjekker vi om prisen.

Kode:

Type MobileBrands Navn som streng LaunchDate som dato lagring som helhet RAM som heltall pris så lang sluttype

Nå i underprosedyren ved å erklære variabelen som Type, Name, dvs. MobileBrands, kan vi få tilgang til alle disse variable datatypene.

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.

  • Forskjell 1: VBA Type kan bare inneholde offentlige variabler. VBA-klasse kan inneholde både offentlige og private variabler.
  • Forskjell 2: VBA-typen kan ikke inneholde prosedyrer og funksjoner. VBA Class inneholder begge sammen med egenskaper.
  • Forskjell 3: VBA Type kan deklareres i en hvilken som helst av modulene og prosedyrene. VBA Class kan kun deklareres i dedikerte klassemoduler.

Interessante artikler...