VBA VarType

Denne artikel vil demonstrere brugen af ​​VarType -funktionen i VBA.

VarType betyder Variabel Type. Vi kan levere variabelens navn til VarType -funktionen, og det vil returnere et helt tal, der viser typen af ​​data, der er gemt i denne variabel ifølge en liste over VBA -konstanter.

Brug af en variantvariabel til at finde VarType

Vi kan erklære en variabel som en variabelvariabel. Dette giver os mulighed for at gemme enhver form for tilladte data i den. Vi kan derefter udfylde denne variabel og bruge VarType -funktionen til at se, hvilken type data der er i variablen.

For eksempel:

12345 Sub TestVarType ()Dim MyVariable som variantMyVariable = "Hej verden"MsgBox "Variabeltypen er" & VarType (MyVariable)Afslut Sub

Dette returnerer følgende meddelelsesboks:

Værdien på 8 returneres derfor. Dette i en Excel -konstant, der definerer typen af ​​data, der er gemt i variablen.

Denne konstante værdi svarer til nedenstående tabel:

Konstant Værdi Beskrivelse
vbTom 0 Tom (uinitialiseret)
vbNull 1 Null (ingen gyldige data)
vbInteger 2 Heltal
vbLang 3 Langt heltal
vbSingle 4 Single-precision floating-point nummer
vbDobbelt 5 Dobbeltpræcisions flydende punktnummer
vbCurrency 6 Valuta værdi
vbDato 7 Datoværdi
vbString 8 Snor
vbObject 9 Objekt
vbError 10 Fejlværdi
vbBoolsk 11 Boolsk værdi
vbVariant 12 Variant (bruges kun med arrays af varianter)
vbDataObject 13 Et dataadgangsobjekt
vbDecimal 14 Decimalværdi
vbByte 17 Byte værdi
vbLangLang 20 Langt langt heltal (kun gyldigt på 64-bit platforme)
vbUserDefinedType 36 Varianter, der indeholder brugerdefinerede typer
vbArray 8192 Array (tilføjes altid til en anden konstant, når den returneres af denne funktion)

Vi kan prøve et andet eksempel:

12345 Sub TestVarType ()Dim MyVariable som variantMyVariable = 32760MsgBox "Variabeltypen er" & VarType (MyVariable)Afslut Sub

Denne gang returnerer meddelelsesboksen et 2, da den type data, der er gemt i variablen, er Heltal.

Men hvis vi ændrer værdien til 32780, vil værdireturen være 3 - Langt heltal, da en heltal datatype har en maksimal værdi på 32767; hvorefter det er et langt heltal.

Hvis vi igen skulle ændre koden:

12345 Sub TestVarType ()Dim MyVariable som variantMyVariable = 32760,52MsgBox "Variabeltypen er" & VarType (MyVariable)Afslut Sub

Vi ville nu få en værdi på 5, der returneres - datatypen er dobbelt på grund af decimalerne.

Hvis vi skulle sætte værdien i variablen i anførselstegn, ville en 8 igen blive returneret, da enhver værdi indeholdt i anførselstegn gemmes som en strengværdi.

12345 Sub TestVarType ()Dim MyVariable som variantMyVariable = "32760.52"MsgBox "Variabeltypen er" & VarType (MyVariable)Afslut Sub

Du vil bidrage til udviklingen af ​​hjemmesiden, at dele siden med dine venner

wave wave wave wave wave