IlmoitusVaihtoehto Selkeä koodimoduulin yläosassa kertoo VBA: lle, että sinun on ilmoitettava kaikki muuttujat, joita käytät koodissa. Jos tämä komento jätetään pois, voit käyttää muuttujia, joita et ole ilmoittanut. Suosittelemme, että käytät Option Explicit -moduulia yläosassa, koska se auttaa välttämään muuttujien väärän kirjoittamisen.
VBA -muuttujien käyttäminen ilman vaihtoehtoa Explicit
Näytämme ensin esimerkin koodista, kun Option Explicit -komentoa ei ole. Tässä on koodi:
123456789 | Yksityinen aliesimerkkiWOOptionExplicit ()Dim strTextA merkkijononastrTextA = "VBA: n testaaminen ilman nimenomaista vaihtoehtoa"MsgBox strTextAEnd Sub |
Esimerkissä ilmoitimme muuttujan strTextA menettelyn ensimmäisellä rivillä ja annoimme sille tekstin. Tämän jälkeen haluamme palauttaa viestiruudun, jonka arvo on strTextA. Tässä on tulos, kun suoritamme koodin:
Kuva 1. Koodi ilman vaihtoehtoa Explicit
Kuten kuvassa 1 näkyy, koodi on suoritettu onnistuneesti. Viestiruutu, jonka arvo on alkaen strTextA ilmestyi, vaikka emme ilmoittaneet muuttujaa strTextA. Tässä ei ole ongelmia koodin kanssa, mutta entä jos olisimme kirjoittaneet muuttujan nimen väärin:
1 | MsgBox strTxtA |
Täällä kirjoitimme strTxtA (ilman "e") strTextA: n sijaan. Tuloksena on tyhjä viestiruutu, koska muuttujaa strTxtA ei ole määritelty. Nyt näemme, miten Option Explicit -palvelua käytetään virheiden estämiseen.
Muuttujien käyttäminen Option Explicit -toiminnon kanssa
Jos haluat estää sellaisten muuttujien käytön, joita ei ole ilmoitettu, sinun on syötettäväVaihtoehto Selkeä moduulin yläosassa:
1 | Vaihtoehto Selkeä |
Tässä on täydellinen koodi, mukaan lukien kirjoitusvirhe:
12345678910 | Vaihtoehto SelkeäYksityinen aliesimerkkiWithOptionExplicit ()Dim strTextA merkkijononastrTextA = "VBA: n testaaminen ilman nimenomaista vaihtoehtoa"MsgBox strTxtAEnd Sub |
Katsotaan mitä tapahtuu, jos suoritamme koodin:
Kuva 2. Koodi, jossa on Option Explicit
Tämän seurauksena saamme virheilmoituksen "Muuttuja ei määritelty", koska emme ilmoittaneetstrTxtA muuttuja.
Option Explicit -toiminnon lisääminen koodimoduulien yläosaan auttaa estämään kirjoitusmuuttujien virheitä.
Jos haluat oppia lisää VBA: n muista VBA-vaihtoehdoista, opi tekemään VBA-kirjainkoosta erottamaton: Estä VBA-kirjainkoko