VBA andmetüübid

Võib-olla olete seni VBA-teekonna ajal määratlenud erinevad muutujad. Kas olete kunagi mõelnud nende muutujate andmetüüpide kohta? Muutuja andmetüüp on midagi, mis ütleb teie süsteemile mõne muutuja abil teie salvestatud andmete tüübi. See on viis, kuidas anda oma kompilaatorile teada, kuidas andmeid hoitakse ja kui suur peaks see olema (erinevatel andmetüüpidel on oma salvestusmaht erinev). See näib olevat kõige elementaarsem osa, millega võite kokku puutuda. Kuid uskuge mind, sama oluline on ka käed külge saada. Pealegi on sellest ka lihtne aru saada.

Andmetüüp = teie andmete tüüp.

VBA-s on umbes enam kui 15 andmetüüpi. Kuid selles artiklis käsitleme kõige sagedamini kasutatavaid andmetüüpe (peaaegu kindlasti kasutatud rohkem kui 90% ajast).

Vaadake allolevat tabelit, kus leiate loetelu laialt kasutatavatest andmetüüpidest, mida on alati hea kasutada viitena:

Näeme samm-sammult, kuidas kõiki neid andmetüüpe kasutatakse muutuja määratlemisel ja andmete salvestamisel.

Muutuja määratlemisel reserveerite tegelikult oma arvutisse mälu, et seda saaks nimega konkreetsele andmetüübile määrata. Sel moel võib muutujat pidada märgiks / piletiks / vautšeriks, mille saab lunastada, kui muutujale tegelikult väärtust omistatakse.

Nagu enamikus tavalistes keeltes, näiteks C, C ++, tuleb enne konkreetsele tüübile väärtuse omistamist muutuja deklareerida. Seda saab teha järgmiselt:

 Dim VariableName kui DataType 

Dim tähistab siin muutuja dimensiooni.

Vaatame, kuidas erinevaid andmetüüpe salvestatakse muutujate abil.

Kuidas kasutada Exceli VBA andmetüüpe?

Õpime VBA andmetüüpe kasutama koos mõne näitega Excelis.

Selle VBA andmetüüpide Exceli malli saate alla laadida siit - VBA andmetüüpide Exceli mall

Näide nr 1 - VBA stringi andmetüüp

String on andmetüübid, mida saab salvestada tekstidena arvuti mällu.

Stringi andmetüübi kasutamiseks Excelis VBA toimige järgmiselt.

1. samm: makro juurde pääsemiseks avage uus moodul ja sisestage alamprotseduur.

Kood:

 Alam Ex1 () Lõpp Alam 

2. samm: kuulutage uus muutuja, mille andmetüübiks on string String, et see saaks stringi väärtust selles hoida.

Kood:

 Sub Ex1 () timmib stringiVar kui stringi lõpp Sub 

3. samm. Kasutage määramisoperaatorit muutujale nimega “stringVar” teksti “Hello VBA Programmer!” Omistamiseks.

Kood:

 Alam Ex1 () timmib stringVar As String stringVar = "Tere, VBA programmeerija!" Lõpu alam 

4. samm: kasutage VBA funktsiooni MsgBox, et näha selle makrokoodi väljundit.

Kood:

 Alam Ex1 () timmib stringVar As String stringVar = "Tere, VBA programmeerija!" MsgBox stringVar End Sub 

5. samm: selle koodi käivitamiseks ja väljundi kuvamiseks klõpsake VBE all nuppu F5 või nuppu Käivita.

Näide nr 2 - VBA tõeväärtuse andmetüüp

Boolean andmetüüp koosneb väärtustest kas tõene või vale. Enamasti saab seda kontrollida, kas teatud loogilised tingimused vastavad või mitte.

Boole'i ​​andmetüübi kasutamiseks Excelis VBA toimige järgmiselt.

1. samm: määratlege mooduli uue alamprotseduuri all uus muutuja kui Boolean.

Kood:

 Sub Ex2 () Hämar boolVar Nagu Boolean End Sub 

2. samm: muutujale “boolVar” määrake väärtus kas tõene või vale (selle asemel võib kasutada ka tõest = -1 ja vale (0)).

Kood:

 Sub Ex2 () Tuhm boolVar Nagu tõeväärtus boolVar = Vale lõpp Sub 

3. samm: kasutage käsku Kui-siis… Muu silmus otsustab, mis juhtub, kui boolVar = True ja False.

Kood:

 Sub Ex2 () Hämarda boolVar Nagu tõeväärtus boolVar = Vale Kui boolVar = Tõsi siis lehed ("Data_Type"). Vahemik ("A1") = "Härjab silma! Sa raputad" muid lehti ("Data_Type"). Vahemik ("A1") ) = "Vabandust tüürimees!" End If End Sub 

Kui siin lingus boolVar = True, siis väärtus, mis peaks olema prinditud lehe Data_Type lahtrisse A1, on „Härja silm! Sa rokid ”. Kui boolVar = False, peaks printimiseks vajalik väärtus olema „Sorry Mate!”

Kui teie arvates loogiliselt öeldes prinditakse lahtrisse A1?

Tõenäoliselt olete vist õigesti arvanud. Tekst trükitakse järgmiselt: „Sorry Mate!”.

4. samm: käivitage see kood ja vaadake väljundit.

Näide nr 3 - VBA täisarvu andmetüüp

Täisarvuline andmetüüp võib numbreid tervikuna talletada. Kui lisate mis tahes arvu murdosaga, ümardatakse see lähima täisarvuni.

Täisarvu andmetüübi kasutamiseks Excelis VBA toimige järgmiselt.

1. samm: määratlege uus muutuja, mille andmetüüp on täisarv, nii et see saaks uue täisprotseduuri korral talletada täisarvu.

Kood:

 Sub Ex3 () Dim intVar Nagu Integer End Sub Sub 

2. samm: määrake muutuja nimega intVar väärtuseks 5.7, määramisoperaatori abil.

Kood:

 Sub Ex3 () Dim intVar Nagu täisarv intVar = 5.7 End Sub 

3. samm: kasutage funktsiooni VBA MsgBox, et näha muutuja “intVar” väärtust sõnumikastina.

Kood:

 Sub Ex3 () Dim intVar Nagu täisarv intVar = 5, 7 MsgBox intVar End Sub 

4. samm. Nüüd väljundi nägemiseks käivitage see kood, kasutades korraga nuppu F5 või nuppu Käivita. Näete väljundsõnumit allpool.

Oota veidi! kas olete siin väljundis märganud midagi kalast?

Olete määranud muutujale “intVar” väärtusena 5.7. Kuidas see prindib kirjakasti alla 6? See juhtus teie määratletud muutuja andmetüübi tõttu. Täisarvutitüüp võib sisaldada ainult täisarvu. Kuna antud arv ei ole täisarv, on see ümardatud lähima täisarvuni (st 6).

Näide 4 - VBA topeltandmetüüp

Ülaltoodud näide toob kaasa VBA-le andmetüübi topelt lisamise. See andmetüüp salvestab mis tahes arvu murdarvudega, samuti väärtusena täisarvu.

Topeltandmetüübi kasutamiseks rakenduses Excel VBA toimige järgmiselt.

1. samm: kuulutage muutuja uue alamenetluse korral kahekordseks.

Kood:

 Sub Ex4 () Tühjenda doubleVar kui topeltots Sub 

2. samm. Muutmisoperaatori abil määrake muutujale „doubleVar” väärtus.

Kood:

 Sub Ex4 () Dim doubleVar As Double doubleVar = 3.7 End Sub 

3. samm: kasutage funktsiooni VBA MsgBox, et näha väljundit VBA-vormingus sõnumikastina.

Kood:

 Sub Ex4 () Dim dubVar As Double doubleVar = 3, 7 MsgBox kaksVar End Sub 

4. samm: käivitage see kood, vajutades nuppu F5 või nuppu Käivita ja vaadake väljundit.

Pole üllatav, et topeltmuutuja võib salvestada ka täisarvu. Kuna taustaprogrammis salvestatakse see väärtus automaatselt kahekordseks. Nt Kui määrate muutujale doubleVar väärtuseks 6, salvestatakse see taustversioonina versioonina 6.0, kuna muutuja andmetüüp on kahekordne.

Näide nr 5 - VBA kuupäeva andmete tüüp

Kuupäev on andmetüüp, mis võib salvestada mis tahes kuupäeva väärtuse vahemikus 1. jaanuar 100 - 12:00:00 kuni 31. detsember 9999 11:59:59 PM.

Kuupäeva andmete tüübi kasutamiseks rakenduses Excel VBA toimige järgmiselt.

1. samm: määratlege uues alaprotseduuris kuupäevaga andmetüüp.

Kood:

 Sub Ex5 () Dim dateVar As Date End Sub 

2. samm: määrake sellele muutujale kuupäeva väärtus, kasutades kombinatsiooni määramisoperaatorit ja funktsiooni VBA KOHE ().

Kood:

 Sub Ex5 () Dim dateVar As Date dateVar = Now () End Sub 

3. samm: kasutage rakendust MsgBox, et näha seda kuupäeva väärtust sõnumina.

Kood:

 Sub Ex5 () Dim dateVar As Date dateVar = Now () MsgBox "Tänane kuupäev on:" & dateVar End Sub 

4. samm: selle koodi väljundi nägemiseks vajutage nuppu F5 või nuppu Käivita.

Need on andmetüübid, mida 9 10st korda kasutate VBA-s töötades. Mässime asjad kokku mõne meeldejääva punktiga.

Asjad, mida meeles pidada

  • Kui määrate muutujale numbrilise / tõeväärtuse / kuupäeva väärtuse, mille andmetüüp on string, teisendab see selle väärtuse automaatselt stringiks (tänu tüübi teisendusfunktsioonidele, mis on saadaval VBA-s) ja salvestatakse selle muutuja alla. Kuid vastupidi, see pole alati võimalik. Terviku või topeltandmetüübiga muutujale ei saa ühtegi stringi väärtust määrata.
  • Stringi vaikeväärtus on tühi string “”.
  • Täisarvu ja topeltväärtuse vaikeväärtus on null.
  • Kui numbrilised kuupäevaväärtused teisendatakse kuupäevadeks, tähistavad komakohta jäävad väärtused kuupäevi ja koma paremal asuvad väärtused tähistavad aega.
  • Negatiivsed täisarvud tähistavad kuupäevi enne 30. detsembrit 1899.

Soovitatavad artiklid

See on olnud VBA andmetüüpide juhend. Siin arutasime Exceli VBA-s viit erinevat andmetüüpi (st string, tõeväärtus, täisarv, topelt, kuupäev) koos praktiliste näidete ja allalaaditava excelimalliga. Võite vaadata ka meie teisi soovitatud artikleid -

  1. Töö VBA Active Celliga
  2. Kuidas kasutada vasakpoolset TRIM-i Excelis?
  3. VBA Valige lahter | Exceli näpunäited
  4. Kuupäeva valem Excelis

Kategooria: