VBA VARTYPE -toiminto | Kuinka löytää muuttujan tietotyyppi?

Excel VBA VarType -toiminto

VBA VARTYPE tarkoittaa muuttujaa. Tämä toiminto auttaa meitä tunnistamaan tietylle muuttujalle määritetyn tietotyypin tai yksinkertaisella sanalla voimme sanoa, että se löytää, millainen arvo muuttujalle on tallennettu tai määritetty.

Syntaksi

VarName: Meidän on vain toimitettava muuttujan nimi, jotta löydämme toimitettuun muuttujan nimeen tallennetut tiedot.

Joten se käyttää muuttujan nimeä syntaksina tai argumenttina ja lähdössä palauttaa muuttujalle määritetyn tietotyypin tai muuttujaan tallennetun datan.

Joten, jos olet koskaan miettinyt, kuinka löytää muuttujan tietotyyppi tai muuttujalle määritetty tieto, niin tässä meillä on VBA-toiminto "VarType".

Esimerkkejä

Voit ladata tämän VBA VARTYPE Excel -mallin täältä - VBA VARTYPE Excel -malli

Esimerkki 1

Kun kirjoitamme koodia VBA: ssa, ilmoitamme yleensä muuttujan ja annamme heille tietotyypin. Katso esimerkki alla olevasta VBA-koodista.

Koodi:

 Sub VarType_Example () Dim MyVar As String MyVar = "Hei" End Sub 

Yllä olevassa esimerkissä olemme ilmoittaneet muuttujan merkkijonoksi "String" ja tälle merkkijonolle arvo "Hello".

Tämä on suoraviivainen tapaus, mutta on myös mahdollista ilmoittaa muuttujat osoittamatta muuttujia niille, joten tällaisissa tapauksissa VarType-toiminto auttaa meitä.

Koodi:

 Sub VarType_Example () Dim MyVar MyVar = "Hei" End Sub 

Yllä olevassa koodissa emme ole määrittäneet mitään tietotyyppiä, mutta olemme antaneet arvoksi heti "Hello", joten VarType-funktiota käyttämällä löydämme muuttujan tietotyypin.

Avaa MSGBOX VBA-koodauksessa yllä olevassa koodissa.

Avaa sitten VarType-toiminto.

Anna nyt muuttujan nimi VARTYPE-funktion argumenttina.

Koodi:

 Sub VarType_Example () Dim MyVar MyVar = "Hei" MsgBox VarType (MyVar) End Sub 

Suorita nyt koodi ja katso mitä saamme viestiruudusta.

Saimme tuloksen 8, koska VBA: lla on tietyt koodit kullekin muuttuville tietotyypeille, joten alla on yksityiskohtainen luettelo sinulle.

Arvo Jatkuva Kuvaus
0 vbTyhjä Muuttujaa ei ole vielä alustettu
1 vbNull Väärät tiedot on määritetty
2 vbInteger Muuttujan arvo on ”Kokonaisluku” -tietotyyppi
3 vbPitkä Muuttujan arvo on ”Pitkä” tietotyyppi
4 vbYksittäinen Muuttujan arvo on ”yksittäinen” tietotyyppi
5 vbTupla Muuttujan arvo on ”Double” tietotyyppi
6 vbValuutta Muuttujan arvo on ”Valuutta” -tietotyyppi
7 vbDate Muuttujan arvo on ”Date” -tietotyyppi
8 vbString Muuttujan arvo on ”String” -tietotyyppi
9 vbObject Muuttujan arvo on “Object” -tietotyyppi
10 vbVirhe Muuttujan arvo on Virhearvo
11 vbBoolean Muuttujan arvo on ”looginen” tietotyyppi
12 vbMuuttuja Muuttujan arvo on “Variantti” -tyyppi (käytetään vain varianttijoukkojen kanssa)
13 vbDataObject Muuttujan arvo on Data Access Object
14 vbDecimal Muuttuja on tietotyyppi ”Desimaali”
17 vbByte Muuttujan arvo on ”tavu” tietotyyppi
20 vbPitkä Muuttujan arvo on LONG LONG -tietotyyppi (voimassa vain 64-bittisillä alustoilla)
36 vbUserDefinedType Muuttujan arvo on ”Käyttäjän määrittämä” tietotyyppi
8192 vbArray Muuttujan arvo on Array

Ok, nyt koodimme on virittänyt muuttujan tietotyypin 8 eli muuttujan nimi “MyVar” sisältää ”String” -tietotyypin.

Esimerkki 2

Katso nyt alla oleva koodi.

Koodi:

 Sub VarType_Example2 () Dim MyVar Set MyVar = ThisWorkbook MsgBox VarType (MyVar) End Sub 

Suoritetaan tämä koodi ja katsotaan tulos.

Tulos on 9 eli muuttuja sisälsi ”Object” -tietotyypin. Kyllä, tämä on oikein, koska muuttujalle "MyVar" olemme asettaneet työkirjan viitteen "Tämä työkirja".

Esimerkki 3

Katso nyt alla oleva koodi.

Koodi:

 Sub VarType_Example3 () Dim MyVar MyVar = 32500 MsgBox VarType (MyVar) End Sub 

Tämä palauttaa tuloksen muodossa 2.

Koska muuttujalle annettu numero 32500 on “Kokonaisluku”.

Nyt vaihdan arvoksi 40000 ja näen tuloksen.

Koodi:

 Sub VarType_Example4 () Dim MyVar MyVar = 40000 MsgBox VarType (MyVar) End Sub 

Tulokseksi saadaan 3.

Koska kokonaisluku päättyy arvoon 32767, niin mitä tahansa sen yläpuolella olevaa kohtaa käsitellään VBA LONG -tietotyyppinä.

Nyt liitän numeron lainausmerkeihin.

Koodi:

 Sub VarType_Example5 () Dim MyVar MyVar = "40000" MsgBox VarType (MyVar) End Sub 

Suorita koodi ja katso tulos.

Saimme tuloksen 8 eli merkkijonotyyppinä.

Tämä johtuu siitä, että suluissa annettua kaikkea käsitellään merkkijonomuuttujana.

Muistettavaa

  • VARTYPE tarkoittaa ”Variable Type”.
  • Tietotyyppiä edustavat yksilölliset numerot, joten katso taulukosta ymmärtääksesi mikä numero edustaa mitä muuttujan tietotyyppiä.

$config[zx-auto] not found$config[zx-overlay] not found