VBA-tietotyypit

Olet ehkä määrittänyt eri muuttujan VBA-matkasi aikana tähän mennessä. Oletko koskaan ajatellut kyseisten muuttujien tietotyyppejä? Muuttujan tietotyyppi on jotain, joka kertoo järjestelmällesi tallentamasi tietotyypin joidenkin muuttujien avulla. Se on tapa kertoa kääntäjällesi kuinka tietoja tallennetaan ja minkä kokoisen sen pitäisi olla (Eri tietotyypeillä on oma tallennuskapasiteettinsa eri tavalla). Tämä näyttää olevan yksinkertaisin osa, jonka saatat keksiä. Mutta usko minua, on yhtä tärkeää olla käsillä. Lisäksi se on helppo ymmärtää myös.

Data Type = tietosi tyyppi.

VBA: n alla on noin 15 tietotyyppiä. Tässä artikkelissa keskustelemme kuitenkin yleisimmin käytetyistä tietotyypeistä (melkein varmasti käytetty yli 90% ajasta).

Katso alla olevasta taulukosta, josta saat luettelon tietotyypeistä, joita käytetään laajasti ja joita on aina hyvä käyttää viitteinä:

Näemme askel askeleelta, kuinka kutakin näistä tietotyypeistä käytetään määrittelemään muuttuja ja tallentamaan tietoja.

Kun määrität muuttujan, varaat tosiasiallisesti tietokoneesi muistia, jotta se voidaan osoittaa tietylle tietotyypille nimellä. Tällä tavoin muuttujaa voidaan pitää merkillä / lipulla / tositteella, joka voidaan lunastaa samalla, kun muuttujalle tosiasiallisesti osoitetaan arvo.

Kuten useimmissa tavanomaisissa kielissä, kuten C, C ++, muuttuja on ilmoitettava ennen kuin annat sille tietyn tyyppisen arvon. Se voidaan tehdä seuraavasti:

 Dim VariableName DataType 

Dim tarkoittaa tässä muuttujan ulottuvuutta.

Katsotaan kuinka eri tietotyyppejä tallennetaan muuttujien avulla.

Kuinka käyttää Excel VBA -tyyppisiä tietoja?

Opimme käyttämään VBA-tietotyyppejä muutaman esimerkin avulla Excelissä.

Voit ladata tämän VBA-tietotyyppien Excel-mallin täältä - VBA-tietotyyppien Excel-mallin

Esimerkki 1 - VBA- merkkijonotietotyyppi

Merkkijono on tietotyypit, jotka voidaan tallentaa teksteinä tietokoneen muistiin.

Noudata alla olevia vaiheita käyttääksesi merkkijonotyyppiä Excel VBA: ssa.

Vaihe 1: Avaa uusi moduuli ja lisää aliproseduuri päästäksesi makroon.

Koodi:

 Sub Ex1 () Loppu Sub 

Vaihe 2: Ilmoita uusi muuttuja, jossa merkkijono on tietotyyppi, jotta se voi pitää merkkijonoarvon siinä.

Koodi:

 Sub Ex1 () himmentää merkkijonoa 

Vaihe 3: Määritä tehtäväoperaattorilla teksti “Hello VBA Programmer!” Muuttujalle nimeltä “stringVar”.

Koodi:

 Sub Ex1 () himmentää stringVar As String stringVar = "Hei VBA-ohjelmoija!" End Sub 

Vaihe 4: Käytä VBA : n MsgBox-toimintoa nähdäksesi tämän makrokoodin tulosteen.

Koodi:

 Sub Ex1 () himmentää stringVar As String stringVar = "Hei VBA-ohjelmoija!" MsgBox stringVar End Sub 

Vaihe 5: VBE: n alla oleva F5- tai Suorita-painike suorittaaksesi tämän koodin ja nähdä tulosteen.

Esimerkki 2 - VBA Boolen tietotyyppi

Boolen tietotyyppi koostuu arvoista joko Tosi tai Väärä. Sitä voidaan useimmiten käyttää tarkistamaan, täyttyvätkö tietyt loogiset ehdot.

Noudata alla olevia vaiheita käyttääksesi Boolen tietotyyppiä Excel VBA: ssa.

Vaihe 1: Määritä uusi muuttuja Boolen arvoksi moduulin uudessa alimenettelyssä.

Koodi:

 Sub Ex2 () himmentää boolVar As Boolean End Sub 

Vaihe 2: Määritä arvo joko tosi tai väärä (True = -1 ja False = 0 voidaan myös käyttää sen sijaan) muuttujalle “boolVar”.

Koodi:

 Sub Ex2 () himmentää boolVar Kuten looginen boolVar = Väärä loppu Sub 

Vaihe 3: Käytä If-Sitten… Muuta silmukka päättääksesi mitä tapahtuu, kun boolVar = True ja False.

Koodi:

 Sub Ex2 () himmentää boolVar Kuten looginen boolVar = Väärä Jos boolVar = Totta sitten taulukot ("Data_Type"). Alue ("A1") = "Hiusten silmä! Sinä kiinni" Muut levyt ("Data_Type"). Alue ("A1") ) = "Anteeksi kaveri!" End If End Sub 

Tässä silmukassa, jos boolVar = True, Data_Type-arkin soluun A1 tulostettava arvo on ”Bulls Eye! Sinä rokkaat". Jos boolVar = Väärä, tulostettava arvo on “Sorry Mate!”

Nyt loogisesti ottaen, mitä luulet tulostavan soluun A1?

Olet todennäköisesti arvasin oikein. Teksti tulostetaan ”Sorry Mate!”.

Vaihe 4: Suorita tämä koodi ja katso lähtö.

Esimerkki 3 - VBA- kokonaisluvutietotyyppi

Kokonaislukuinen tietotyyppi voi tallentaa numeroita kokonaisuutena. Jos annat jonkin luvun, jossa on murto-osa, se pyöristetään lähimpään kokonaislukuun.

Noudata alla olevia vaiheita käyttääksesi kokonaislukudatyyppiä Excel VBA: ssa.

Vaihe 1: Määritä uusi muuttuja, jolla on tietotyyppi kokonaislukuna, jotta se voi tallentaa kokonaislukuarvon uudessa alamenettelyssä.

Koodi:

 Sub Ex3 () himmenee intarina kokonaislukuna Loppu alaosa 

Vaihe 2: Määritä arvoksi 5.7 muuttujalle, jonka nimi on “intVar” käyttämällä toimeksiantotoimintoa.

Koodi:

 Sub Ex3 () Dim intVar Kuten kokonaisluku intVar = 5.7 End Sub 

Vaihe 3: Käytä VBA MsgBox -toimintoa nähdäksesi muuttujan “intVar” arvon viestiruuduna.

Koodi:

 Sub Ex3 () Dim intVar Kuten kokonaisluku intVar = 5.7 MsgBox intVar End Sub 

Vaihe 4: Suorita nyt koodi F5- tai Suorita-painikkeella samanaikaisesti nähdäksesi tulosteen. Näet tulosteen viestiruudun, kuten alla.

Odota hetki! Oletko huomannut jotain hämärää täällä tulostuksessa?

Olet määrittänyt arvon 5.7 muuttujalle “intVar”. Kuinka se tulostaa 6 viestiruudun alle? Se tapahtui määrittämäsi muuttujan tietotyypin takia. Kokonaislukudatatyyppi voi pitää vain kokonaisia ​​numeroita. Koska silloin annettu luku ei ole kokonaisluku, se on pyöristetty lähimpään kokonaislukuun (ts. 6).

Esimerkki 4 - VBA- kaksoistietotyyppi

Yllä oleva esimerkki johtaa datatyypin double sisällyttämiseen VBA: hon. Tämä tietotyyppi tallentaa minkä tahansa luvun fraktioineen samoin kuin kokonaisen numeron arvona.

Noudata alla olevia vaiheita käyttääksesi kaksoistietotyyppiä Excel VBA -sovelluksessa.

Vaihe 1: Ilmoita muuttuja kaksinkertaisena uudessa alamenettelyssä.

Koodi:

 Sub Ex4 () himmentää doubleVar as Double End Sub 

Vaihe 2: Määritä arvo muuttujalle “doubleVar” määritysoperaattorilla.

Koodi:

 Sub Ex4 () Himmennä kaksinkertainen kaksoisarvo Koska Tupla kaksoisarvo = 3, 7 Loppu alaosaan 

Vaihe 3: Käytä VBA MsgBox -toimintoa nähdäksesi tulosteen viestiruuduna VBA: ssa.

Koodi:

 Sub Ex4 () Himmennä dublaarinen Kuten Tupla-kaksoisarvo = 3, 7 

Vaihe 4: Suorita tämä koodi napsauttamalla F5 tai Suorita-painiketta ja katso lähtö.

Ei ole yllättävää, että kaksinkertainen muuttuja voi tallentaa myös kokonaisluvun. Koska taustassa tämä arvo tallennetaan automaattisesti kaksinkertaisena. Ex. Jos määrität arvon muuttujalle doubleVar arvoksi 6, se tallennetaan 6.0: ksi taustana, koska muuttujan tietotyyppi on kaksinkertainen.

Esimerkki 5 - VBA- päivämäärätietotyyppi

Päivämäärä on tietotyyppi, joka voi tallentaa minkä tahansa päivämääräarvon välillä 01. tammikuuta 100 12.00:00 - 31. joulukuuta 9999 11:59:59 PM.

Noudata alla olevia vaiheita käyttääksesi päivämäärätietotyyppiä Excel VBA -sovelluksessa.

Vaihe 1: Määritä tietotyyppinen muuttuja päivämääränä uudessa alamenettelyssä.

Koodi:

 Sub Ex5 () Dim dateVar As Date End Sub 

Vaihe 2: Määritä päivämääräarvo tälle muuttujalle käyttämällä toimeksiannon operaattoria ja VBA NYT () -toimintoa.

Koodi:

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

Vaihe 3: Käytä MsgBoxia nähdäksesi tämän päivämääräarvon viestinä.

Koodi:

 Sub Ex5 () himmennetty dateVar As Date dateVar = Now () MsgBox "Päivän päivämäärä on:" & dateVar End Sub 

Vaihe 4: Näpäytä F5- tai Suorita-painiketta nähdäksesi tämän koodin tulosteen.

Nämä ovat tietotyyppejä, joita 9 kymmenestä kertaa käytät työskenteleessäsi VBA: ssa. Kääritään asiat muistettavaksi muodoiksi.

Muistettavat asiat

  • Jos määrität numeerisen / loogisen / päivämääräarvon muuttujalle, jonka tietotyyppi on merkkijono, se muuntaa kyseisen arvon automaattisesti merkkijonoksi (VBA: n tyyppimuunnostoimintojen ansiosta) ja tallentaa kyseisen muuttujan alle. Kuitenkin päinvastoin ei aina ole mahdollista. Et voi määrittää mitään merkkijonoarvoa muuttujalle, jolla on kokonaisluku tai kaksoistietotyyppi.
  • Merkkijonon oletusarvo on tyhjä merkkijono “”.
  • Kokonaisluku- ja kaksinkertaisen arvon oletusarvo on nolla.
  • Kun numeeriset päivämääräarvot muunnetaan päivämääriksi, desimaalipisteisiin vasemmalle jäävät arvot edustavat päivämääriä ja desimaalipilkun oikealla puolella olevat arvot edustavat aikaa.
  • Negatiiviset kokonaisluvut edustavat päivämääriä ennen 30. joulukuuta 1899.

Suositellut artikkelit

Tämä on opas VBA-tietotyyppeihin. Tässä keskustelimme viidestä erilaisesta tietotyypistä (eli merkkijono, looginen, kokonaisluku, tupla, päivämäärä) Excel VBA: ssa käytännön esimerkkien ja ladattavien Excel-mallien kanssa. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -

  1. Yhteistyö VBA Active Cell -sovelluksen kanssa
  2. Kuinka käyttää vasenta TRIMiä Excelissä?
  3. VBA Valitse solu | Excel-vinkkejä
  4. Päivämääräkaava Excelissä

Luokka: