VBA datatype
Datatype er kjernekarakteren til en hvilken som helst variabel, den representerer hvilken type verdi vi kan lagre i variabelen, og hva er grensen eller rekkevidden av verdier som kan lagres i variabelen, datatyper er innebygd VBA og bruker eller utvikler må være klar over hvilken type verdi som kan lagres i hvilken datatype. Datatyper tilordnet variabler forteller kompilatorens lagringsstørrelse på variabelen.
I VBA har vi to typer datatyper, dvs. numeriske og ikke-numeriske.
Før vi tilordner en datatype, må vi først erklære variabelnavnet. Variabel er et navn som inneholder verdien gjennom den tildelte datatypen. Mens vi gir navnet til variabelen, må vi huske på noen få ting.
Vi kan definere variabelen på to måter. Den ene er "implisitt", og en annen er "eksplisitt."
- Den implisitte måten å definere en variabel på er uten å bruke ordet "DIM" og datatype til den. For eksempel er MyValue = 500 den implisitte måten å erklære en variabel på.
- En eksplisitt måte å definere en variabel på er med ordet “DIM” og datatypen som er knyttet til den. For eksempel Dim MyValue som Integer .

Topp 2 typer datatyper
For å tilordne datatypen til variabelen først, må vi forstå typene datatyper. For å forstå bedre, kan vi kategorisere i to plater.
# 1 - Numeriske datatyper
Disse kan bare inneholde numeriske verdier. De vanligste numeriske datatypene er Byte, Heltall, Lang, Enkelt, Dobbelt, Valuta og Desimal.
Hver av datatypene kan ha sine respektive verdier. Nedenfor er en detaljert forklaring.
- En byte kan holde verdiene fra 0 til 255. Den kan ikke inneholde mer enn 255.
- Heltall kan holde verdier fra -32768 til 32768. Det kan ikke inneholde desimaltall.
- Lang kan holde verdier fra -2,147,483,648 til 2,147,483,648.
- Den enkelte datatypen kan bare inneholde verdier på opptil 7 sifre, for eksempel 1234567, 1.245564.
- Den doble datatypen kan inneholde verdier på opptil 15 sifre. Det er bare utvidelsen av datatypen Single.
- Valutadatatypen kan inneholde 15 sifre før desimalverdien og holde 4 sifre etter desimalverdien.
- Desimaldatatypen kan ha opptil 28 desimaler. Hvis du ønsker å lagre noe mer enn 15 desimaler, kan du bruke denne datatypen.
# 2 - Ikke-numeriske datatyper
Disse datatypene kan inneholde verdier av noe annet enn numeriske verdier. Oftere brukte ikke-numeriske datatyper er Variant , String, Boolean, Date, Object.
- Streng: Det er to typer strengdatatyper. En som kan inneholde numeriske data og en annen som kan inneholde ikke-numeriske data.
- Streng Fast lengde kan inneholde tegn fra 1 til 65400 tegn.
- Streng Variabel lengde kan inneholde tegn fra 0 til 2 milliarder tegn.
- Boolsk kan ha logiske resultatverdier, dvs. SANN eller FALSK.
- En dato kan bare inneholde datoverdier fra 1. januar 100 til 31. desember 9999
- Gjenstand kan bare inneholde gjenstander av Microsoft-produkt. For eksempel arbeidsark, arbeidsbok, rekkevidde, PowerPoint, Word.
- En variant har også to datatyper, dvs. tekst og numerisk.
- Varianttekst kan inneholde tekstverdier de samme som variabelen Lengde på variabel streng.
- Variant numerisk kan inneholde numeriske verdier det samme som datatypen Dobbel.
Eksempler på bruk av forskjellige VBA-datatyper
For eksempel, for å tilordne en datatype først, må vi deklarere en variabel ved å bruke ordet " Dim."
Kode:
Sub DT_Example1 () Dim k End Sub
Nå bruker vi ordet "As", og vi må tilordne datatypen. Nå vil jeg tilordne datatypen som " Byte."
Kode:
Sub DT_Example1 () Dim k Som Byte End Sub
Som vi vet kan Byte-datatypen holde verdiene fra 0 til 255. Men for å teste, vil jeg tilordne en verdi på mer enn 255.
Kode:
Sub DT_Example1 () Dim k As Byte k = 260 End Sub
Nå, hvis jeg kjører denne koden, får vi feilen som "Over Flow."

Tilsvarende kan andre datatyper også ha verdier i henhold til grensene.
Ta en titt på koden nedenfor.
Kode:
Sub DT_Example2 () Dim k As Boolean k = 100 MsgBox k End Sub
Datatypen er tildelt som "boolsk", som inneholder enten SANT eller FALSK. Men jeg har tilordnet verdien som "100" til variabelen "k."
Kjør denne koden og se hva som skjer.

Vi fikk resultatet som " True".
Årsaken til at vi ble SANTE fordi excel behandler noe mer enn 0 som SANT og behandler 0 som FALSE.
Nå vil jeg tildele ikke-numerisk verdi og se hva som skjer.

Vi fikk feilen fordi “boolsk” ikke kan godta andre tekstverdier enn SANT eller FALSK.