Globalne varijable Excel VBA

Bilo koju varijablu obično deklariramo koristeći riječ DIM i to je najbolja izravna metoda za to. Ali varijable deklarirane pomoću DIM-a mogu se koristiti samo unutar istog modula. Ako pokušamo koristiti ovu varijablu definiranu pomoću DIM-a, ona će biti primjenjiva za modul pod kojim je deklarirana. Što ako želimo koristiti varijablu u bilo kojem modulu ili projektu? Što ne može biti moguće ako nastavimo koristiti DIM za definiranje te varijable?

U tom slučaju imamo sekundarnu opciju definiranjem varijable riječju Global ili Public u VBA. Globalne ili Javne varijable VBA su one varijable koje su deklarirane na početku potkategorije uz pomoć opcije Explicit. Sve stvari koje mi ne možemo ili ne možemo učiniti u potkategorijama, one se prije toga rade pod opcijom Izričito.

Kako deklarirati globalne varijable u VBA?

Ispod su sljedeći primjeri deklariranja globalne varijable u Excelu pomoću VBA koda.

Možete preuzeti ovaj Excel predložak globalne varijable VBA globalne varijable ovdje - VBA predložak Global Variables Excel

VBA globalne varijable - Primjer # 1

U ovom ćemo primjeru vidjeti kako se različite potkategorije mogu koristiti kao jedan modul bez korištenja globalne ili javne riječi za definiranje bilo koje varijable. Za to bi nam trebao modul.

  • Idite na izbornik Umetanje i kliknite na Modul kao što je prikazano u nastavku.

  • Sada upišite podkategoriju u bilo koje ime kao što je prikazano u nastavku.

Kodirati:

 Sub Global_Variable () Kraj Sub 

  • Sada koristite DIM za definiranje bilo koje vrste varijable. Ovdje smo odabrali abecedu A kao string .

Kodirati:

 Sub Global_Variable () Dim A kao string string Sub 

  • Sada stvorite drugu podkategoriju u istom modulu kao što je prikazano u nastavku.

Kodirati:

 Sub Global_Variable () Dim A Kao String End Sub Sub Global_Variable6 () Kraj Sub 

  • Sada u drugoj potkategoriji definirajte drugu varijablu B pomoću DIM-a kao String.

Kodirati:

 Sub Global_Variable () Dim A kao kraj niza Sub Sub Global_Variable6 () Dim B kao kraj niza Sub 

Kao što je gore prikazano, obje varijable A i B definirane u obje potkategorije ne mogu se koristiti u međusobnoj regiji. Oni se mogu primijeniti samo u njihovoj potkategoriji.

  • Sada da biste ovo učinili, napišite Opciju izričito iznad prve podkategorije kao što je prikazano u nastavku.

Kodirati:

 Opcija Izričit Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

  • Sada možemo definirati našu varijablu koja će se koristiti u obje podkategorije koje imamo u nastavku. Stoga razmislite o pisanju bilo koje varijable recimo A kao String koristeći DIM.

Kodirati:

 Opcija Izričit Dim A kao string string Global_Variable () Kraj Sub Sub Global_Variable6 () Kraj Sub 

Kako smo definirali varijablu, sve će se podkategorije nalaziti u tom modulu i to bi bilo primjenjivo na sav kod tog modula. A ako pokušamo nazvati varijable definirane u ovom modulu nekom drugom modulu, to bi nam dovelo do pogreške.

VBA globalne varijable - primjer br. 2

U ovom ćemo primjeru vidjeti kako se koristi Global ili Public riječ za definiranje bilo koje varijable u excelu VBA. Za to ćemo koristiti kod koji smo vidjeli u primjeru-1.

Koristit ćemo ispod dijela koda za globalnu ili javnu deklaraciju varijable.

Kodirati:

 Opcija Izričit Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

Kao što smo to radili u primjeru-1 gdje smo proglasili zajedničku varijablu koja će se koristiti u obje potkategorije, ispod Opcije eksplicitne. U primjeru ćemo također proglasiti Globalnu varijablu ispod opcije Explicit.

Kako već imamo svoj kôd, tako možemo izravno ići na deklariranje varijabli koristeći Global . Sada u donjoj opciji Izričito napišite Global ono isto kao i DIM i odaberite varijablu po izboru. Ovdje biramo abecedu A kao što je prikazano u nastavku.

Kodirati:

 Opcija Izričit Global A Sub Global_Variable () Dim A kao string string Sub Sub Global_Variable6 () Dim B kao String End Sub 

Sada biramo bilo koju vrstu varijable da to bude. Kao što smo već koristili String u gornjem primjeru, tako bismo i ovdje koristili isti.

Kodirati:

 Opcija Izričit Global A kao string niza Sub Global_Variable () Dim A kao String End Sub Sub Global_Variable6 () Dim B kao String End Sub 

Time se završava naš proces deklariranja za globalnu varijablu. Sada to možemo koristiti u bilo kojem modulu, bilo koji projekt samo kao String. Prije nego što ga koristimo, izbrišite prethodno deklariranu varijablu, a kôd će izgledati kao što je prikazano u nastavku.

Kodirati:

 Opcija Izričit Global A kao string string Global_Variable () Kraj Sub Sub Global_Variable6 () Kraj Sub 

Sada dodijelimo neki tekst definiranoj varijabli A u obje potkategorije. Mi biramo "Test1" i "Test2" za varijablu A u obje podkategorije, kako je dolje prikazano. Također smo odabrali MsgBox za prikaz vrijednosti pohranjenih u varijabli A.

Kodirati:

 Opcija eksplicitni Global A kao string string Global_Variable () A = "Test1" MsgBox A End Sub Sub Global_Variable6 () A = "Test2" MsgBox A End Sub 

Sada pokrenite kôd pritiskom na tipku F5 ili klikom na gumb za reprodukciju da biste vidjeli rezultat.

Dobićemo poruku kao "Test1" kao što je prikazano gore. To je zato što smo mi pokazivač zadržali u prvoj potkategoriji.

Sada stavite pokazivač bilo gdje u drugoj potkategoriji i ponovno pokrenite kôd. Sada ćemo dobiti okvir s porukom "Test2" kao što je prikazano u nastavku.

Ovako možemo stvoriti i definirati varijablu jednom uz pomoć Global-a koja se može koristiti u bilo kojem modulu, bilo kojoj klasi i bilo kojem projektu. Javno možemo koristiti i umjesto Globalnog, kao što je prikazano u nastavku. A ovo će dati isti rezultat kao i mi kada smo koristili Global.

Kodirati:

 Opcija eksplicitna javna A kao niza Sub Global_Variable () A = "Test1" MsgBox A End Sub Sub Global_Variable6 () A = "Test2" MsgBox A End Sub 

Pros VBA Global Variable

  • To štedi vrijeme u deklariranju više varijabli kada znamo, možda ćemo trebati ponovno definirati istu vrstu varijable u različitim modulima ili podkategorijama.
  • Koristeći Global ili Public u definiranju varijabilnog procesa, naš kod postaje manji i štedi vrijeme i prostore.
  • Smanjuje složenost kada pišemo ogroman kod i može nas zbuniti uporaba različitih varijabli u različitim modulima ili podkategorijama.

Protiv VBA globalne varijable

  • Ako napravimo bilo kakve promjene u varijabli Global, tada će se te promjene primijeniti na svim mjestima gdje se koristi, uzrokujući problem u funkcionalnosti pisanog koda.

Stvari koje treba zapamtiti

  • Global i Public mogu se upotrebljavati naizmjenično s istim funkcionalnostima.
  • Ako ne želimo koristiti Globalnu varijablu, možemo slijediti postupak kao što je prikazano u primjeru-1 za definiranje varijable. Ali to bi bilo ograničeno na isti modul.
  • Globalne varijable mogu se koristiti u bilo kojem modulu, bilo kojoj potkategoriji, bilo kojoj klasi ili bilo kojem projektu.
  • Globalna varijabla daje izlaz koda gdje smo zadržali kursor. Neće pokrenuti cjelokupni kôd odjednom dajući sav izlaz jedan po jedan.

Preporučeni članci

Ovo je vodič za VBA globalne varijable. Ovdje smo raspravljali o tome kako deklarirati globalne varijable u Excelu pomoću VBA koda zajedno s nekoliko praktičnih primjera i preuzeti Excel predložak. Možete i pregledati naše druge predložene članke -

  1. VBA Korisnički obrazac
  2. Riješite jednadžbu u Excelu
  3. VBA Aktivirajte list
  4. Kako urediti padajući popis u Excelu?

Kategorija: