VBA Datatyper
Du har muligvis defineret forskellige variabler i løbet af din VBA-rejse indtil nu. Har du nogensinde tænkt på de datatyper, disse variabler har? En datatype for en variabel er noget, der fortæller dit system om den type data, du gemmer ved hjælp af nogle variabler. Det er en måde at lade din compiler vide, hvordan dataene gemmes, og hvilken størrelse de skal være af (forskellige datatyper har forskellige lagerkapaciteter i deres egen). Dette ser ud til at være den mest basale del, du måske kommer frem til. Men tro mig, det er lige så vigtigt at have en hånd på. Derudover er det nemt at forstå.
Datatype = Type af dine data.
Der er omtrent mere end 15 datatyper til stede under VBA. I denne artikel diskuterer vi dog de mest almindeligt anvendte datatyper (næsten helt sikkert brugt mere end 90% af tiden).
Se venligst nedenstående tabel, hvor du får listen over datatyper, der er vidt brugt og altid er gode at have som reference:
Vi vil se trin for trin, hvordan hver af disse datatyper bliver brugt til at definere en variabel og lagre data.
Når du definerer en variabel, reserverer du faktisk en hukommelse på din computer, så den tildeles en bestemt datatype med et navn. På den måde kan en variabel betragtes som et token / ticket / voucher, der kan indløses, mens en værdi faktisk tildeles til variablen.
Som i de fleste konventionelle sprog som C, C ++, skal du erklære en variabel, før du tildeler en værdi af den specifikke type til den. Det kan gøres som nedenfor:
Dim VariableName Som DataType
Her står Dim for en dimension af variablen.
Lad os se, hvordan forskellige datatyper gemmes ved hjælp af variabler.
Sådan bruges Excel VBA-datatyper?
Vi lærer, hvordan man bruger VBA-datatyper med et par eksempler i Excel.
Du kan downloade denne VBA Datatyper Excel-skabelon her - VBA Datatyper Excel SkabelonEksempel 1 - VBA- strengdatatype
En streng er de datatyper, der kan gemmes som tekster i computerens hukommelse.
Følg nedenstående trin for at bruge strengdatatype i Excel VBA.
Trin 1: Åbn et nyt modul, og indsæt underprocedure for at få adgang til makroen.
Kode:
Sub Ex1 () Slut Sub
Trin 2: Angiv en ny variabel med streng som en datatype, så den kan indeholde en strengværdi i den.
Kode:
Sub Ex1 () Dim stringVar Som String End Sub
Trin 3: Brug tildelingsoperatøren til at tildele en tekst “Hello VBA Programmer!” Til en variabel med navnet “stringVar”.
Kode:
Sub Ex1 () Dim stringVar As String stringVar = "Hej VBA-programmør!" Afslut under
Trin 4: Brug MsgBox-funktion fra VBA for at kunne se output fra denne makrokode.
Kode:
Sub Ex1 () Dim stringVar As String stringVar = "Hej VBA-programmør!" MsgBox strengVar End Sub
Trin 5: Tryk på F5 eller Run-knappen under VBE for at køre denne kode og se output.
Eksempel # 2 - VBA boolsk datatype
Boolsk datatype består enten sandt eller falsk som værdier. Det kan mest bruges til at kontrollere, om visse logiske betingelser er opfyldt eller ej.
Følg nedenstående trin for at bruge boolsk datatype i Excel VBA.
Trin 1: Definer en ny variabel som Boolean under ny underprocedure i et modul.
Kode:
Sub Ex2 () Dim boolVar Som Boolean End Sub
Trin 2: Tildel en værdi enten Sand eller Falsk (Sand = -1 og Falsk = 0 kan også bruges i stedet) til variabel “boolVar”.
Kode:
Sub Ex2 () Dim boolVar Som Boolean boolVar = False End Sub
Trin 3: Brug If-Then … Else loop til at beslutte, hvad der sker, når boolVar = Sandt og falsk.
Kode:
Sub Ex2 () Dim boolVar Som boolsk boolVar = Falsk Hvis boolVar = sandt derefter ark ("Data_Type"). Range ("A1") = "Bulls Eye! You Rock" Else Sheets ("Data_Type"). Range ("A1" ) = "Undskyld mate!" Slutt Hvis slut Sub
Her i denne løkke, hvis boolVar = Sandt, er den værdi, der skal udskrives i celle A1 på arket Data_Type, “Bulls Eye! Du styrer". Hvis boolVar = False, er den værdi, der skal udskrives, “Sorry Mate!”
Nu, logisk set, hvad tror du, bliver trykt under celle A1?
Du har sandsynligvis gættet rigtigt. Teksten bliver trykt vil være "Sorry Mate!".
Trin 4: Kør denne kode og se output.
Eksempel # 3 - VBA heltal datatype
En heltal datatype kan gemme numre som en helhed. Hvis du giver et hvilket som helst tal med brøkdel i det, afrundes det til det nærmeste heltal.
Følg nedenstående trin for at bruge heltal-datatype i Excel VBA.
Trin 1: Definer en ny variabel med datatype som et heltal, så det kan gemme heltalværdi under en ny underprocedure.
Kode:
Sub Ex3 () Dim intVar Som heltal End Sub
Trin 2: Tildel værdi som 5.7 til variabel med navnet “intVar” ved hjælp af tildelingsoperatør.
Kode:
Sub Ex3 () Dim intVar Som heltal intVar = 5.7 End Sub
Trin 3: Brug VBA MsgBox-funktion til at se værdien af variablen “intVar” som en meddelelsesboks.
Kode:
Sub Ex3 () Dim intVar Som heltal intVar = 5, 7 MsgBox intVar End Sub
Trin 4: Kør nu denne kode ved hjælp af F5 eller Run-knappen samtidigt for at se output. Du kan se et outputmeddelelsesfelt som nedenfor.
Vent et sekund! har du bemærket noget fiskigt her i output?
Du har tildelt 5.7 som en værdi til variablen “intVar”. Hvordan udskrives det 6 under meddelelsesfeltet? Det skete på grund af datatypen for den variabel, du definerede. Heltalsdatatypen kan kun indeholde hele tal. Da det tildelte nummer ikke er et helt tal, er det afrundet til det nærmeste heltal (dvs. 6).
Eksempel 4 - VBA dobbelt datatype
Ovenstående eksempel fører til inkludering af datatype dobbelt under VBA. Denne datatype gemmer ethvert nummer med brøk samt hele tallet som en værdi.
Følg nedenstående trin for at bruge dobbelt datatype i Excel VBA.
Trin 1: Angiv en variabel som dobbelt under den nye underprocedure.
Kode:
Sub Ex4 () Dim doubVar Som dobbelt ende Sub
Trin 2: Tildel en værdi til variablen "doubVar" ved hjælp af en tildelingsoperatør.
Kode:
Sub Ex4 () Dim doubVar Som Double doubVar = 3.7 End Sub
Trin 3: Brug VBA MsgBox-funktion for at kunne se output som en meddelelsesboks i VBA.
Kode:
Sub Ex4 () Dim doubVar Som Double doubVar = 3, 7 MsgBox doubVar End Sub
Trin 4: Kør denne kode ved at trykke på F5 eller Run-knappen og se output.
Ikke overraskende kan en dobbeltvariabel også gemme en heltalværdi. Fordi i backend gemmes denne værdi automatisk som dobbelt. Eks. Hvis du tildeler 6 som en værdi til variabel doubVar, gemmes den som 6, 0 i backend på grund af en variabel datatype som dobbelt.
Eksempel 5 - VBA-datatype
Datoen er en datatype, der kan gemme en hvilken som helst datoværdi inden for intervallet 1. januar 100 12.00: 00 til 31. december 9999 23:59:59.
Følg nedenstående trin for at bruge Datatypen i Excel VBA.
Trin 1: Definer en variabel med datatype som en dato i en ny underprocedure.
Kode:
Sub Ex5 () Dim dateVar Som Date End Sub
Trin 2: Tildel en datoværdi til denne variabel ved hjælp af en kombination af tildelingsoperatør og VBA NU () -funktion.
Kode:
Sub Ex5 () Dim dateVar Som Date dateVar = Nu () Slut Sub
Trin 3: Brug MsgBox for at kunne se denne datoværdi som en meddelelse.
Kode:
Sub Ex5 () Dim dateVar Som Date dateVar = Nu () MsgBox "Dagens dato er:" & dateVar End Sub
Trin 4: Tryk på F5 eller Run-knappen for at se output af denne kode.
Dette er de datatyper, som 9 ud af 10 gange du bruger, mens du arbejder i VBA. Lad os pakke tingene op med nogle punkter, der skal huskes.
Ting at huske
- Hvis du tildeler en numerisk / boolsk / dato-værdi til en variabel med datatype som streng, konverteres den automatisk denne værdi til streng (takket være typekonverteringsfunktioner, der er tilgængelige under VBA) og gemme under den variabel. Omvendt er det dog ikke altid muligt. Du kan ikke tildele nogen strengværdi til en variabel med et heltal eller dobbelt datatype.
- Standardværdien for en streng er tom streng “”.
- Standardværdi for heltal og dobbeltværdi er nul.
- Når numeriske datoværdier konverteres til datoer, repræsenterer værdier, der er tilbage til decimalerne, datoer og værdier til højre for decimalpunktet repræsenterer tid.
- Negative heltal repræsenterer datoer inden den 30. december 1899.
Anbefalede artikler
Dette har været en guide til VBA-datatyper. Her diskuterede vi Top 5 forskellige datatyper (dvs. streng, boolsk, heltal, dobbelt, dato) i Excel VBA sammen med praktiske eksempler og downloadbar excel-skabelon. Du kan også gennemgå vores andre foreslåede artikler -
- Arbejder med VBA Active Cell
- Hvordan bruges Left TRIM i Excel?
- VBA Vælg celle | Excel-tip
- Datoformel i Excel