VBA VarType

Dit artikel demonstreert het gebruik van de VarType-functie in VBA.

VarType betekent Variabel Type. We kunnen de naam van de variabele aan de VarType-functie geven, en het zal een geheel getal retourneren dat het type gegevens weergeeft dat in die variabele is opgeslagen volgens een lijst met VBA-constanten.

Een variantvariabele gebruiken om het VarType te vinden

We kunnen een variabele declareren als een Variantvariabele. Hierdoor kunnen we elk type toegestane gegevens erin opslaan. We kunnen deze variabele vervolgens vullen en de functie VarType gebruiken om te zien welk type gegevens zich in de variabele bevindt.

Bijvoorbeeld:

12345 SubtestVarType()Dim MyVariable als variantMijnVariabele = "Hallo wereld"MsgBox "Het type variabele is " & VarType(MyVariable)Einde sub

Hierdoor wordt het volgende berichtvenster geretourneerd:

De waarde van 8 wordt daarom geretourneerd. Dit in een Excel-constante die het type gegevens definieert dat in de variabele wordt opgeslagen.

Deze constante waarde komt overeen met onderstaande tabel:

Constante Waarde Beschrijving
vbLeeg 0 Leeg (niet geïnitialiseerd)
vbNull 1 Null (geen geldige gegevens)
vbGeheel getal 2 Geheel getal
vbLang 3 Lang geheel getal
vbEnkel 4 Single-precision floating-point getal
vbDubbel 5 Drijvende-kommagetal met dubbele precisie
vbValuta 6 Valutawaarde
vbDatum 7 Datumwaarde
vbString 8 Snaar
vbObject 9 Object
vbFout 10 Foutwaarde
vbBoolean 11 Booleaanse waarde
vbVariant 12 Variant (alleen gebruikt met arrays van varianten)
vbDataObject 13 Een gegevenstoegangsobject
vbDecimaal 14 decimale waarde
vbByte 17 Bytewaarde
vbLangLang 20 LongLong integer (alleen geldig op 64-bits platforms)
vbUserDefinedType 36 Varianten die door de gebruiker gedefinieerde typen bevatten
vbArray 8192 Array (altijd toegevoegd aan een andere constante wanneer geretourneerd door deze functie)

We kunnen een ander voorbeeld proberen:

12345 SubtestVarType()Dim MyVariable als variantMijnVariabele = 32760MsgBox "Het type variabele is " & VarType(MyVariable)Einde sub

Deze keer retourneert het berichtvenster een 2 omdat het type gegevens dat in de variabele is opgeslagen Integer is.

Als we de waarde echter wijzigen in 32780, is de waarderetour 3 - Lang geheel getal aangezien een Integer-gegevenstype een maximale waarde van 32767 heeft; waarna het een lang geheel getal is.

Als we de code opnieuw zouden wijzigen:

12345 SubtestVarType()Dim MyVariable als variantMijnVariabele = 32760.52MsgBox "Het type variabele is " & VarType(MyVariable)Einde sub

We zouden nu een waarde van 5 krijgen - het gegevenstype is Dubbel vanwege de decimalen.

Als we de waarde in de variabele tussen aanhalingstekens zouden plaatsen, zou opnieuw een 8 worden geretourneerd omdat elke waarde tussen aanhalingstekens wordt opgeslagen als een tekenreekswaarde.

12345 SubtestVarType()Dim MyVariable als variantMijnVariabele = "32760.52"MsgBox "Het type variabele is " & VarType(MyVariable)Einde sub

U zal helpen de ontwikkeling van de site, het delen van de pagina met je vrienden

wave wave wave wave wave