VBA VARTYPE funkcija | Kaip rasti kintamojo duomenų tipą?

„Excel VBA“ varType funkcija

VBA VARTYPE reiškia „kintamasis tipas“. Ši funkcija padeda mums nustatyti duomenų tipą, priskirtą konkrečiam kintamajam, arba paprastu žodžiu galime pasakyti, kad jis nustato, kokia vertė yra kintamajam saugoma ar priskirta.

Sintaksė

„VarName“: mes tiesiog turime pateikti kintamojo pavadinimą, kad rastume duomenis, saugomus pateiktame kintamojo pavadinime.

Taigi, kintamojo pavadinimas laikomas sintakse ar argumentu, o išvestyje jis pateikia kintamajam priskirtą duomenų tipą arba kintamajame saugomų duomenų rūšį.

Taigi, jei kada nors susimąstėte, kaip rasti kintamojo duomenų tipą ar kintamajam priskirtų duomenų rūšį, čia mes turime VBA funkciją „VarType“.

Pavyzdžiai

Šį „VBA VARTYPE Excel“ šabloną galite atsisiųsti čia - „VBA VARTYPE Excel“ šablonas

1 pavyzdys

VBA rašydami kodą mes paprastai deklaruojame kintamąjį ir priskiriame jiems duomenų tipą. Pavyzdžiui, pažvelkite į žemiau esantį VBA kodą.

Kodas:

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

Ankstesniame pavyzdyje mes paskelbėme kintamąjį kaip „String“, o šiai eilutei priskyrėme vertę kaip „Hello“.

Tai yra tiesioginis atvejis, tačiau taip pat galima deklaruoti kintamuosius nepriskirdami jiems kintamųjų, todėl tokiais atvejais mums padeda funkcija „VarType“.

Kodas:

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

Ankstesniame kode mes nepriskyrėme jokių duomenų tipų, bet iškart priskyrėme vertę kaip „Sveiki“, todėl naudodami funkciją VarType galime rasti kintamojo duomenų tipą.

Atidarykite MSGBOX VBA kodavimu aukščiau nurodytu kodu.

Tada atidarykite „VarType“ funkciją.

Dabar įveskite kintamojo pavadinimą kaip funkcijos VARTYPE argumentą.

Kodas:

 Sub VarType_Example () Dim MyVar MyVar = "Sveiki" MsgBox VarType (MyVar) Pabaiga Sub 

Dabar paleiskite kodą ir pamatykite, ką gauname pranešimų laukelyje.

Rezultatas buvo 8, nes VBA turi tam tikrus kodus kiekvienos rūšies kintamajam duomenų tipui, todėl žemiau pateikiamas išsamus jūsų sąrašas.

Vertė Nuolatinis apibūdinimas
0 vbTuščias Kintamasis dar nėra inicializuotas
1 vbNull Priskirti netinkami duomenys
2 vbInteger Kintamoji reikšmė yra „Sveikasis skaičius“ duomenų tipas
3 vbLong Kintamoji vertė yra „ilgas“ duomenų tipas
4 vbVienas Kintamoji vertė yra „vienas“ duomenų tipas
5 vbDvigubas Kintamoji vertė yra „Double“ duomenų tipas
6 vbCurrency Kintamoji vertė yra „Valiuta“ duomenų tipas
7 vbData Kintamojo reikšmė yra „Data“ duomenų tipas
8 „vbString“ Kintamoji vertė yra „String“ duomenų tipas
9 vbObject Kintamoji reikšmė yra „Object“ duomenų tipas
10 vbKlaida Kintamoji vertė yra klaidos vertė
11 vbBoolean Kintama reikšmė yra „Boolean“ duomenų tipas
12 vbvariantas Kintamojo vertė yra „Variant“ duomenų tipas (naudojamas tik su variantų masyvais)
13 „vbDataObject“ Kintama reikšmė yra duomenų prieigos objektas
14 vbDešimtainis skaičius Kintamoji vertė yra „dešimtainis“ duomenų tipas
17 vbByte Kintamoji vertė yra „Byte“ duomenų tipas
20 vbLongLong Kintamoji vertė yra „LONG LONG“ duomenų tipas (galioja tik 64 bitų platformose)
36 „vbUserDefinedType“ Kintamoji reikšmė yra „vartotojo apibrėžta“ duomenų rūšis
8192 vbArray Kintama reikšmė yra masyvas

Gerai, dabar mūsų kodas pakartojo kintamojo duomenų tipą kaip 8, ty kintamojo pavadinime „MyVar“ yra „String“ duomenų tipas.

2 pavyzdys

Dabar pažvelkite į žemiau pateiktą kodą.

Kodas:

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

Paleiskime šį kodą ir pažiūrėkime, koks yra rezultatas.

Rezultatas yra 9, ty kintamasis turi duomenų tipą „Object“. Taip, tai teisinga, nes kintamajam „MyVar“ mes nustatėme darbaknygės nuorodą „Ši darbaknygė“.

3 pavyzdys

Dabar pažvelkite į žemiau pateiktą kodą.

Kodas:

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

Tai grąžins rezultatą kaip 2.

Nes kintamajam priskirtas skaičius 32500 yra „Sveikasis skaičius“.

Dabar pakeisiu vertę į 40000 ir pamatysiu rezultatą.

Kodas:

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

Tai duos rezultatą kaip 3.

Kadangi sveikojo skaičiaus vertė baigiasi 32767, todėl viskas, kas aukščiau, bus traktuojama kaip VBA LONG duomenų tipas.

Dabar aš pridėsiu skaičių kabutėse.

Kodas:

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

Paleiskite kodą ir pamatykite rezultatą.

Rezultatą gavome kaip 8, ty eilutės duomenų tipą.

Taip yra todėl, kad viskas, kas pateikiama skliaustuose, bus traktuojama kaip eilutės kintamasis.

Ką reikia atsiminti

  • VARTYPE reiškia „kintamasis tipas“.
  • Duomenų tipą žymi unikalūs skaičiai, todėl nurodykite lentelę, kad suprastumėte, kuris skaičius nurodo kintamojo duomenų tipą.

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