VBA-gegevenstype - Hoe gegevenstypen declareren en toewijzen?

Inhoudsopgave

VBA-gegevenstype

Datatype is het kernkarakter van elke variabele, het vertegenwoordigt wat het type waarde is dat we in de variabele kunnen opslaan en wat is de limiet of het bereik van waarden dat in de variabele kan worden opgeslagen, datatypes zijn ingebouwde VBA en gebruiker of ontwikkelaar moet weten welk type waarde kan worden opgeslagen in welk gegevenstype. Gegevenstypen die aan variabelen worden toegewezen, vertellen de opslaggrootte van de compiler van de variabele.

In VBA hebben we twee soorten gegevenstypen, namelijk numeriek en niet-numeriek.

Voordat we een gegevenstype toewijzen, moeten we eerst de variabelenaam declareren. Variabele is een naam die de waarde bevat via het toegewezen gegevenstype. Bij het geven van een naam aan de variabele, moeten we een aantal dingen in gedachten houden.

We kunnen de variabele op twee manieren definiëren. De ene is 'impliciet' en de andere is 'expliciet'.

  • De impliciete manier om een ​​variabele te definiëren is zonder het woord "DIM" en het gegevenstype ervoor te gebruiken. Bijvoorbeeld MyValue = 500 is de impliciete manier waarbij een variabele.
  • Een expliciete manier om een ​​variabele te definiëren is met het woord "DIM" en het bijbehorende gegevenstype. Bijvoorbeeld Dim MyValue as Integer .

Top 2 soorten gegevenstypen

Om eerst het gegevenstype aan de variabele toe te wijzen, moeten we de soorten gegevenstypen begrijpen. Om beter te begrijpen, kunnen we indelen in twee platen.

# 1 - Numerieke gegevenstypen

Deze kunnen alleen numerieke waarden bevatten. De meest voorkomende numerieke gegevenstypen zijn byte, geheel getal, lang, enkel, dubbel, valuta en decimaal.

Elk van de gegevenstypen kan hun respectieve waarden bevatten. Hieronder volgt een uitgebreide toelichting.

  • Een byte kan de waarden van 0 tot 255 bevatten. Het kan niet meer dan 255 bevatten.
  • Geheel getal kan waarden van -32768 tot 32768 bevatten. Het kan geen decimale getallen bevatten.
  • Long kan waarden bevatten van -2.147.483.648 tot 2.147.483.648.
  • Het enkele gegevenstype kan waarden bevatten van maximaal 7 cijfers, bijvoorbeeld 1234567, 1.245564.
  • Het dubbele gegevenstype kan waarden bevatten van maximaal 15 cijfers. Het is slechts de uitbreiding van het datatype Single.
  • Het gegevenstype valuta kan 15 cijfers vóór de decimale waarde bevatten en 4 cijfers na de decimale waarde.
  • Het decimale gegevenstype kan maximaal 28 decimalen bevatten. Als u meer dan 15 decimalen wilt opslaan, kunt u dit gegevenstype gebruiken.

# 2 - Niet-numerieke gegevenstypen

Deze gegevenstypen kunnen andere waarden dan numerieke waarden bevatten. Vaker gebruikte niet-numerieke gegevenstypen zijn Variant , String, Boolean, Date, Object.

  • String: Er zijn twee soorten stringgegevenstypen. Een die numerieke gegevens kan bevatten en een andere die niet-numerieke gegevens kan bevatten.
  • Tekenreeks Vaste lengte kan tekens bevatten van 1 tot 65400 tekens.
  • Tekenreeks Variabele lengte kan tekens van 0 tot 2 miljard tekens bevatten.
  • Boolean kan logische resultaatwaarden bevatten, dwz TRUE of FALSE.
  • Een datum kan alleen datumwaarden bevatten van 1 januari 100 tot 31 december 9999
  • Object Het kan alleen objecten van een Microsoft-product bevatten. Bijvoorbeeld werkblad, werkmap, bereik, PowerPoint, Word.
  • Een variant heeft ook twee gegevenstypen, namelijk Tekst en Numeriek.
  • Varianttekst kan tekstwaarden bevatten die gelijk zijn aan de variabele String Variabele lengte.
  • Variant Numeric kan dezelfde numerieke waarden bevatten als het gegevenstype Double.

Voorbeelden om verschillende VBA-gegevenstypen te gebruiken

Om bijvoorbeeld eerst een gegevenstype toe te wijzen, moeten we een variabele declareren met het woord ' Dim'.

Code:

Sub DT_Example1 () Dim k End Sub

Nu we het woord "As" gebruiken, moeten we het gegevenstype toewijzen. Nu zal ik het gegevenstype toewijzen als ' Byte'.

Code:

Sub DT_Example1 () Dim k As Byte End Sub

Zoals we weten, kan het gegevenstype Byte de waarden van 0 tot 255 bevatten. Maar om te testen, zal ik een waarde van meer dan 255 toewijzen.

Code:

Sub DT_Example1 () Dim k As Byte k = 260 End Sub

Als ik deze code uitvoer, krijgen we de foutmelding 'Overflow'.

Evenzo kunnen andere gegevenstypen ook waarden bevatten volgens hun limieten.

Bekijk nu de onderstaande code.

Code:

Sub DT_Example2 () Dim k As Boolean k = 100 MsgBox k End Sub

Het gegevenstype wordt toegewezen als "Boolean", die TRUE of FALSE bevat. Maar ik heb de waarde '100' toegewezen aan de variabele 'k'.

Voer deze code uit en kijk wat er gebeurt.

We kregen het resultaat als " Waar".

De reden waarom we WAAR zijn, omdat Excel alles meer dan 0 als WAAR behandelt en 0 als ONWAAR behandelt.

Nu zal ik een niet-numerieke waarde toewijzen en kijken wat er gebeurt.

We hebben de foutmelding gekregen omdat "Boolean" geen andere tekstwaarden kan accepteren dan TRUE of FALSE.

Interessante artikelen...