VBA-vaihtoehto nimenomainen - Kuinka tehdä muuttuvasta ilmoituksesta pakollinen?

Excel VBA -vaihtoehto eksplisiittinen

Muuttujien ilmoittaminen on erittäin tärkeää VBA: ssa, Option Explicit tekee käyttäjän pakolliseksi ilmoittaa kaikki muuttujat ennen niiden käyttöä, mikä tahansa määrittelemätön muuttuja heittää virheen koodin suorittamisen aikana, voimme kirjoittaa avainsanavaihtoehdon eksplisiittiseksi tai voimme sallia sen kaikki vaihtoehtojen koodit sallimalla vaatia muuttujailmoitusta.

VBA: ssa kaikki on muuttujia. Tietojen tallentamiseen tarvitaan muuttujia, joilla on sopiva tietotyyppi. Voit kysyä minulta, miksi tarvitset muuttujaa, kun voit lisätä arvon suoraan taulukkoon. Tämä johtuu pääasiassa työkirjan monista käyttäjistä. Jos sitä käsittelee yksi henkilö, voit viitata arvon suoraan taulukkoon. Deklaroimalla muuttujat voimme tehdä joustavan koodin tietojen tallentamiseksi.

Mikä on VBA-vaihtoehto eksplisiittinen?

Toivon, että olit tavannut moduulin yläosassa olevan sinisellä vuoratun sanan ”Option Explicit” ennen kuin makro alkoi moduulissa.

VBA-oppimisen alussa minäkään en ymmärtänyt mikä se oli, ja ollakseni rehellinen, en edes ajatellut tätä ollenkaan. Ei vain sinulle tai minulle, mutta se on sama kaikille lähtökohdissa. Mutta näemme tämän sanan tärkeyden nyt.

"Option Explicit" on mentorimme muuttujan ilmoittamisessa. Lisäämällä tämä sana muuttuja-ilmoituksesta tulee pakollinen prosessi.

Katso ymmärrystä esimerkiksi alla olevasta koodista.

Koodi:

Aliesimerkki 1 () i = 25 MsgBox i End Sub

Jos suoritan tämän koodin, saamme muuttujan "I" arvon VBA: n viestiruutuun.

Lisään nyt sanan ”Option Explicit” VBA-koodin alkuun.

Suoritan nyt koodin ja näen mitä tapahtuu. Jos harjoittelet kanssani, suorita koodi painamalla F5-näppäintä.

Saimme käännösvirheen, ja siinä sanotaan: "Muuttujaa ei määritelty." Emme ole ilmoittaneet muuttujaa ”i”, mutta olemme antaneet sille arvoksi heti 25.

Koska olemme lisänneet sanan "Option Explicit", se pakottaa meidät ilmoittamaan muuttujan pakollisesti.

Yllä olevassa koodissa aakkoset "i" on ilmoittamaton, joten olemme lisänneet muuttujan ohjainsanan "Option Explicit", joka estää meitä käyttämästä ilmoittamattomia muuttujia.

Kun lisäät sanan ”Option Explicit” moduulin yläosaan, sitä voidaan käyttää kaikissa kyseisen moduulin makroissa ilmoittamaan muuttujat pakollisesti.

Kuinka tehdä muuttuvasta ilmoituksesta pakollinen?

Jos olet lisännyt muuttujan mentorin ”Option Explicit” manuaalisesti moduuliin, kun lisäät uuden moduulin, et saa oletuksena tätä muuttujan mentoria.

Jos luulet joka kerta, kun sinun on lisättävä sana ”Option Explicit” kaikille uusille moduuleille manuaalisesti, olet väärässä.

Koska voimme tehdä tämän sanan pakolliseksi kaikissa moduuleissa tekemällä yksinkertaisen asetuksen, säädä asetuksia noudattamalla seuraavia ohjeita.

Vaihe 1: Siirry Visual basic editoriin.

Vaihe 2: Siirry TYÖKALUihin ja napsauta Asetukset.

Vaihe 3: Kun napsautat Asetukset, näet alla olevan ikkunan.

Vaihe 4: Siirry tässä ikkunassa Editoriin ja valitse vaihtoehto "Vaadi muuttujailmoitus".

Vaihe 5: Sulje ikkuna napsauttamalla OK.

Tästä lähtien aina kun lisäät uuden moduulin, se lisää oletusarvoisesti sanan ”Option Explicit”.

Vaihtoehto Explicit on säästäjäsi

Option Explicit auttaa meitä monin tavoin. Heti tekemättä muuttujan ilmoituksen pakolliseksi, se auttaa meitä suorittamiseen asti. Katso alla oleva koodi.

Koodi:

Aliesimerkki2 () Dim CurrentValue kokonaislukuna CurentValue = 500 MsgBox CurrentValue End Sub

Edellä mainitussa koodissa olen ilmoittanut muuttujan "CurrentValue" kokonaisluvuksi. Seuraavalla rivillä olen määrittänyt sille arvon 500. Jos suoritan tämän koodin, minun pitäisi saada 500 viestiruudun tuloksena. Mutta katso mitä tapahtuu.

Siinä sanotaan "Muuttujaa ei määritelty" ja korostetaan toinen rivi.

Jos tarkastelemme tarkasti toista riviä, on pieni kirjoitusvirhe. Muuttujanimeni on "CurrentValue", mutta toisella rivillä olen unohtanut yhden oikeinkirjoituksen, ts. "R". Se sanoo "CurrentValue" eikä "CurrentValue". Koska olen tehnyt muuttujailmoituksesta pakollisen lisäämällä sanan ”Option Explicit” Excel VBA: ssa, se on korostanut tekemäni kirjoitusvirheen.

Joten kun korjaamme oikeinkirjoituksen ja suoritamme koodin, saamme tuloksen seuraavasti.

Tervehdi äskettäin nimitettyä vaihtuvaa mentoria !!!

Mielenkiintoisia artikkeleita...