VBA-typeerklæring (eksempel) - Hvordan erklæres variabler med VBA-type?

Type er en sætning i VBA, der bruges til at definere variabler, der ligner DIM-funktionen, den bruges på det brugerdefinerede niveau, hvor vi har en eller flere værdier i en variabel, der er to nomenklaturer for typesæt, som er offentlig eller privat dog disse er valgfri at bruge, men variabelnavnet og elementnavnet er påkrævet.

Hvad er typeforklaring i Excel VBA?

VBA Type Statement bruges til at definere variabler under et enkelt gruppenavn med forskellige datatyper tildelt hver variabel. Dette hjælper os med at gruppere flere variabler under et enkelt objekt for at bruge dem under det definerede typenavn.

Ved at erklære Type-erklæringen kan vi undgå at bruge klassemoduler i VBA. Det har ikke brug for nogen strengmoduler, fordi det kan integreres i allerede eksisterende moduler, hvilket kan spare os plads.

I en af ​​de tidligere artikler har vi diskuteret "VBA ENUM" for at gruppere alle variablerne under det enkelte gruppenavn.

For eksempel, hvis du har et gruppenavn kaldet "Mobiles", har vi gruppemedlemmer som "Redmi, Oppo, Vivo, Samsung, LG og osv …" Så Enum-udsagn kan vi gruppere sammen med deres respektive værdier.

Enum Mobiles

Redmi = 12000

Oppo = 18000

Vivo = 18000

Samsung = 25000

LG = 15000

Afslut Enum

Som dette har vi oprettet enumerationer i denne artikel. Problemet med Enum-sætningen, da den kun kan indeholde en LANG datatype. For at gruppere variabler med forskellige datatyper kan vi bruge "VBA TYPE Statement." I denne artikel viser vi dig, hvordan du konstruerer en Type-erklæring i VBA. Læs videre…

Syntaks

Før du erklærer variabler ved hjælp af Type-sætning, skal du se på syntaksen:

Type 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  slutttype

Disse typer udsagn kan erklæres i modulet såvel som øverst i modulet, som vores globale variabler i VBA.

VBA Type kan indeholde objektvariabler. Det kan indeholde arrays. Det kan dog ikke indeholde procedurer, funktioner.

Type Statement Eksempel i VBA

Ok, lad processen med at erklære variabler med Type-sætningen starte. Vi vil se det samme eksempel på at erklære mobilmærker som hvordan vi har brugt i VBA Enum.

Trin 1: Start ordet “Type” øverst i modulet, og giv navnet på gruppen Type.

Kode:

Skriv MobileBrands End Type

Trin 2: I Mobile Brands, hvad er de ting, vi normalt ser. Vi ser Navn først, så erklær variablen som Navn som streng.

Kode:

Skriv MobileBrands navn som streng slut type

Trin 3: Efter navnet kontrollerer vi startdatoen. Erklær variablen som LaunchDate som dato.

Kode:

Indtast navn på MobileBrands som streng LaunchDate som slutdato for dato

Trin 4: Den næste ting er, at vi kontrollerer lagerkapacitet. At erklære variablen som lager som heltal.

Kode:

Indtast navn på MobileBrands som streng Startdato som datalagring som heltalstype

Trin 5: Den næste ting er, at vi kontrollerer RAM-kapacitet.

Kode:

Skriv MobileBrands Navn som streng Startdato som datalagring som RAM som heltalstype

Trin 6: Endelig tjekker vi om prisen.

Kode:

Type MobileBrands Navn som streng Startdato Som dato opbevaring som hel RAM Som helpris Som lang ende Type

Nu i underproceduren ved at erklære variablen som Type, Name, dvs. MobileBrands, kan vi få adgang til alle disse variable datatyper.

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.

  • Forskel 1: VBA-type kan kun indeholde offentlige variabler. VBA-klasse kan indeholde både offentlige såvel som private variabler.
  • Forskel 2: VBA-typen kan ikke indeholde procedurer og funktion. VBA Class indeholder dem begge sammen med egenskaber.
  • Forskel 3: VBA Type kan deklareres i ethvert af modulerne og procedurerne. VBA-klasse kan kun deklareres i dedikerede klassemoduler.

Interessante artikler...