Excel VBA: n globaalit muuttujat

Yleensä ilmoitamme kaikki muuttujat käyttämällä sanaa DIM ja tämä on paras suora tapa tehdä tämä. Mutta DIM: llä ilmoitettuja muuttujia voidaan käyttää vain samassa moduulissa. Jos yritämme käyttää tätä DIM: n avulla määritettyä muuttujaa, sitä sovelletaan moduuliin, jossa se ilmoitetaan. Entä jos haluamme käyttää muuttujaa missä tahansa moduulissa tai projektissa? Mikä ei ole mahdollista, jos jatkamme DIM: n käyttöä kyseisen muuttujan määrittelemiseen?

Tässä tapauksessa meillä on toissijainen vaihtoehto määrittelemällä muuttuja sanalla Global tai Public VBA: ssa. VBA-globaalit tai julkiset muuttujat ovat niitä muuttujia, jotka ilmoitetaan alakategorian alussa Optio-oikeuksien avulla. Mitä tahansa asioita, joita emme tai osaa tehdä alakategorioissa, ne tehdään ennen sitä kohdassa Explicit.

Kuinka julistaa globaalit muuttujat VBA: ssa?

Alla on erilaisia ​​esimerkkejä yleisen muuttujan ilmoittamiseksi Excelissä VBA-koodilla.

Voit ladata tämän VBA Global Variables Excel -mallin täältä - VBA Global Variables Excel Template

VBA: n globaalit muuttujat - esimerkki # 1

Tässä esimerkissä näemme kuinka eri alaluokkia voidaan käyttää yhtenä moduulina käyttämättä globaalia tai julkista sanaa minkään muuttujan määrittelemiseen. Tätä varten tarvitsemme moduulin.

  • Siirry Lisää- valikkoon ja napsauta moduulia alla olevan kuvan mukaisesti.

  • Kirjoita nyt alaluokka mihin tahansa nimeen alla olevan kuvan mukaisesti.

Koodi:

 Sub Global_Variable () Loppu Sub 

  • Määritä nyt muuttujat DIM: n avulla. Tässä olemme valinneet merkkijonoksi aakkoset A.

Koodi:

 Sub Global_Variable () himmentää merkkijonona loppuosa 

  • Luo nyt uusi alaluokka samaan moduuliin kuin alla.

Koodi:

 Sub Global_Variable () himmentää merkkijonona loppuosa Sub Global_Variable6 () End alaosa 

  • Määritä nyt toisessa alaluokassa toinen muuttuja B käyttämällä DIM merkkijonona.

Koodi:

 Sub Global_Variable () himmentää merkkijonon loppuna Sub Global_Variable6 () himmentyy B merkkijonon lopuna sub 

Kuten yllä on esitetty, molemmissa alaluokissa määriteltyjä muuttujia A ja B ei voida käyttää toistensa alueella. Niitä voidaan soveltaa vain omassa alaryhmässään.

  • Nyt tehdäksesi tämän työn kirjoita Option Explicit ensimmäisen alaluokan yläpuolelle alla olevan kuvan mukaisesti.

Koodi:

 Vaihtoehto Explicit Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

  • Nyt voimme määritellä muuttujamme, jota käytetään molemmissa alaluokissa, joista meillä on alla. Joten nyt harkitse minkä tahansa muuttujan A kirjoittamista merkkijonona DIM: n avulla.

Koodi:

 Vaihtoehto Explicit Dim A kuin merkkijono Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

Kuten olemme määritellyt muuttujan, kaikki alakategoriat ovat kyseisessä moduulissa ja tätä sovellettaisiin vain kyseisen moduulin kaikkiin koodeihin. Ja jos yritämme kutsua tässä moduulissa määriteltyjä muuttujia jollekin toiselle moduulille, se antaisi meille virheen.

VBA: n globaalit muuttujat - esimerkki 2

Tässä esimerkissä näemme kuinka käyttää globaalia tai julkista sanaa minkä tahansa muuttujan määrittelemiseen excel VBA: ssa. Tätä varten käytämme koodia, jonka olemme nähneet esimerkissä-1.

Käytämme koodin alla olevaa osaa globaalin tai julkisen muuttujan ilmoitukseen.

Koodi:

 Vaihtoehto Explicit Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

Kuten teimme esimerkissä-1, jossa olemme ilmoittaneet yhteisen muuttujan, jota käytettäisiin molemmissa alaluokissa, Explicit-vaihtoehdon alapuolella. Esimerkissä julistetaan globaali muuttuja myös vaihtoehdon alapuolella.

Koska meillä on jo koodi valmiina, jotta voimme suoraan jatkaa muuttujien ilmoittamista käyttämällä Globalia . Kirjoita nyt alla olevaan Explicit -sovellukseen Globaali sama, johon tottimme DIM: n kanssa, ja valitse haluamasi muuttuja. Tässä valitaan aakkoset A kuten alla.

Koodi:

 Vaihtoehto Epäselvä Globaali A Sub Globaali_Variable () himmentää A merkkijonon lopussa Sub Sub Globaali_Variable6 () himmentyy B kuin merkkijono loppu alaosa 

Nyt valitsemme minkä tahansa tyyppisen muuttujan siitä. Kuten olemme jo käyttäneet jousetta yllä olevassa esimerkissä, niin käyttäisimme samaa myös täällä.

Koodi:

 Vaihtoehto Täsmällinen Globaali A kuin merkkijono Sub Global_Variable () himmentää A merkkijonon lopussa Sub Sub Global_Variable6 () himmentyy B kuin merkkijono lopussa sub 

Tämä täydentää globaalin muuttujien ilmoitusprosessiamme. Nyt voimme käyttää tätä missä tahansa moduulissa, missä tahansa projektissa vain merkkijonona. Poista ennen aiemmin ilmoitettua muuttujaa, ennen kuin sitä käytetään, koodi näyttää seuraavan kuvan mukaiselta.

Koodi:

 Vaihtoehto Täsmällinen Globaali A Merkkijonona Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

Otetaan nyt tekstiä määritellylle muuttujalle A molemmissa alaluokissa. Valitsemme muuttujan A kohdalle ”Test1” ja “Test2” molemmissa alaluokissa, kuten alla on esitetty. Ja olemme myös valinneet MsgBox näyttää muuttujaan A tallennetut arvot.

Koodi:

 Vaihtoehto Eksklusiivinen Globaali A Kuten merkkijono Sub Global_Variable () A = "Test1" MsgBox A End Sub Sub Globaali_Variable6 () A = "Test2" MsgBox A End Sub 

Suorita nyt koodi painamalla F5-näppäintä tai napsauttamalla toistopainiketta nähdäksesi tulos.

Saamme viestin nimellä "Test1", kuten yllä on esitetty. Se johtuu siitä, että olimme pitäneet kohdistinta ensimmäisessä alaluokassa.

Aseta kohdistin nyt mihin tahansa toiseen alaluokkaan ja aja koodi uudelleen. Saamme nyt viestiruudun, jossa on viesti “Test2”, kuten alla.

Näin voimme luoda ja määritellä muuttujan kerran Globalin avulla ja jota voidaan käyttää missä tahansa moduulissa, missä tahansa luokassa ja missä tahansa projektissa. Voimme käyttää julkista myös globaalin sijasta, kuten alla on esitetty. Ja tämä antaa saman tuloksen kuin mitä saimme Globalin käytössä.

Koodi:

 Vaihtoehto Suorat julkiset A Kuten merkkijonot Sub Global_Variable () A = "Test1" MsgBox A End Sub Sub Global_Variable6 () A = "Test2" MsgBox A End Sub 

VBA: n globaalin muuttujan plussat

  • Se säästää aikaa useiden muuttujien ilmoittamisessa, kun tiedämme, että joudumme ehkä määrittelemään saman tyyppiset muuttujat uudelleen eri moduuleissa tai alaluokissa.
  • Kun määrität muuttuvan prosessin globaalilla tai julkisella, koodistamme tulee vähemmän säästää aikaa ja tilaa.
  • Se vähentää monimutkaisuutta, kun kirjoitamme valtavaa koodia, ja se voi hämmentyä eri muuttujien käytöstä eri moduuleissa tai alaluokissa.

Miinukset VBA Global Variable

  • Jos teemme muutoksia globaaliin muuttujaan, muutokset otetaan käyttöön kaikissa niissä kohdissa, joissa niitä käytetään, mikä aiheuttaa ongelman kirjoitetun koodin toiminnallisuudessa.

Muistettavat asiat

  • Globaalia ja julkista voidaan käyttää korvaavasti samalla toiminnolla.
  • Jos emme halua käyttää globaalia muuttujaa, voimme seurata prosessia, kuten esimerkissä-1 on esitetty, muuttujan määrittelemiseksi. Mutta se rajoittuisi samaan moduuliin.
  • Globaaleja muuttujia voidaan käyttää missä tahansa moduulissa, missä tahansa alaluokassa, missä tahansa luokassa tai missä tahansa projektissa.
  • Globaali muuttuja antaa koodin ulostulon missä olemme pitäneet kohdistinta. Se ei suorita koko koodia kerralla, jolloin kaikki lähdöt yksitellen.

Suositellut artikkelit

Tämä on opas VBA: n globaaleihin muuttujiin. Tässä keskustellaan siitä, kuinka julistaa globaalit muuttujat Excelissä käyttämällä VBA-koodia, sekä joitain käytännöllisiä esimerkkejä ja ladattavaa excel-mallia. Voit myös käydä läpi muiden ehdottamiemme artikkeleidemme -

  1. VBA UserForm
  2. Ratkaise yhtälö Excelissä
  3. VBA Aktivoi Arkki
  4. Kuinka muokata avattavaa luetteloa Excelissä?

Luokka: