Variabile globale Excel VBA

De obicei, declarăm orice variabilă folosind cuvântul DIM și aceasta este cea mai bună metodă directă de a face acest lucru. Dar variabilele declarate folosind DIM pot fi utilizate doar în cadrul aceluiași modul. Dacă încercăm să utilizăm această variabilă definită prin utilizarea DIM, aceasta va fi aplicabilă pentru modulul în care este declarată. Ce se întâmplă dacă vrem să folosim o variabilă în orice modul sau proiect? Ce nu poate fi posibil dacă continuăm să utilizăm DIM pentru a defini acea variabilă?

În acest caz, avem o opțiune secundară prin definirea variabilei prin cuvântul Global sau Public în VBA. Variabilele VBA Global sau Public sunt acele variabile care sunt declarate la începutul subcategoriei cu ajutorul opțiunii Explicit. Indiferent de lucrurile pe care nu le facem sau nu le putem face în subcategorii, acestea sunt efectuate înainte de Opțiunea Explicit.

Cum se declară variabile globale în VBA?

Mai jos sunt diferite exemple pentru a declara o variabilă globală în Excel folosind codul VBA.

Puteți descărca acest șablon Excel Global Variables VBA de aici - șablonul VBA Global Variables Excel

Variabile globale VBA - Exemplul # 1

În acest exemplu, vom vedea cum diferite subcategorii pot fi utilizate ca un singur modul fără a utiliza cuvântul Global sau Public pentru definirea vreunei variabile. Pentru aceasta, am avea nevoie de un modul.

  • Accesați meniul Insert și faceți clic pe Modul, așa cum se arată mai jos.

  • Acum tastați subcategoria în orice nume, așa cum se arată mai jos.

Cod:

 Sub Global_Variable () End Sub 

  • Acum folosiți DIM pentru a defini orice fel de variabilă. Aici am ales alfabetul A ca șir .

Cod:

 Sub Global_Variable () Dim A As String Cap 

  • Acum creați o altă subcategorie în același modul, așa cum se arată mai jos.

Cod:

 Sub Global_Variable () Dim A As String End Sub Sub Global_Variable6 () End Sub 

  • Acum, în a doua subcategorie definiți o altă variabilă B folosind DIM ca String.

Cod:

 Sub Global_Variabil () Dim A Ca Capăt String Sub Sub Global_Variable6 () Dim B Ca Sub capăt String 

După cum se arată mai sus, atât variabilele A cât și B definite în ambele subcategorii nu pot fi utilizate în fiecare regiune. Acestea vor fi aplicabile numai în propria lor subcategorie.

  • Acum, pentru a face acest lucru, scrie Opțiunea Explicită deasupra primei subcategorii, așa cum se arată mai jos.

Cod:

 Opțiune Explicită Sub Global_Variabilă () Final Sub Sub Global_Variabil6 () Sfârșit Sub 

  • Acum putem defini variabila noastră care va fi folosită în ambele subcategorii pe care le avem mai jos. Deci, acum luați în considerare scrierea oricărei variabile spunând A ca String folosind DIM

Cod:

 Opțiune Explicită Dim A ca șir de caractere Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

După cum am definit variabila, toate sub-categoriile vor fi în acel modul și acest lucru ar fi aplicabil numai la codul acelui modul. Și dacă încercăm să apelăm variabilele definite în acest modul la un alt modul, atunci ne-ar da eroarea.

Variabile globale VBA - Exemplul # 2

În acest exemplu, vom vedea cum să utilizăm cuvântul Global sau Public pentru definirea oricărei variabile din excel VBA. Pentru aceasta, vom folosi codul pe care l-am văzut în exemplul 1.

Vom folosi mai jos porțiunea de cod pentru declararea variabilei globale sau publice.

Cod:

 Opțiune Explicită Sub Global_Variabilă () Final Sub Sub Global_Variabil6 () Sfârșit Sub 

Așa cum am făcut în exemplul 1 unde am declarat variabila comună care va fi folosită în ambele subcategorii, sub Opțiunea Explicită. În exemplu, vom declara și variabila globală sub Opțiunea Explicită.

Deoarece avem deja codul nostru pregătit, putem continua direct la declararea variabilelor folosind Global . Acum, în Opțiunea Explicită de mai jos scrie Global la fel cum am folosit cu DIM și selectați o variabilă la alegere. Aici alegem alfabetul A așa cum se arată mai jos.

Cod:

 Opțiune Explicit Global A Sub Global_Variabil () Dim A Ca Sub capăt String Sub_ Global_Variable6 () Dim B Ca String Cap Sub 

Acum alegem orice tip de variabilă care să fie aceasta. Așa cum am folosit deja String în exemplul de mai sus, atunci vom folosi același lucru și aici.

Cod:

 Opțiune Explicit Global A Ca Sub String Global_Variable () Dim A Ca Sub capăt String Sub_ Global_Variable6 () Dim B Ca String Cap Sub 

Aceasta completează procesul nostru global de declarare a variabilelor. Acum putem folosi acest lucru în orice modul, orice proiect doar ca String. Înainte de a o folosi, ștergeți variabila declarată anterior, atunci codul va arăta ca în figura de mai jos.

Cod:

 Opțiune Explicit Global A Ca String Sub Global_Variable () End Sub Sub Global_Variable6 () End Sub 

Acum să atribuim ceva text variabilei A definite în ambele subcategorii. Alegem „Test1” și „Test2” pentru variabila A în ambele subcategorii, după cum se arată mai jos. De asemenea, am ales MsgBox pentru a afișa valorile stocate în variabila A.

Cod:

 Option Explicit Global A As String Sub Global_Variable () A = "Test1" MsgBox A Sub Sub Global Global_Variable6 () A = "Test2" MsgBox A Sub Sub 

Acum rulați codul apăsând tasta F5 sau făcând clic pe butonul redare pentru a vedea rezultatul.

Vom primi mesajul ca „Test1” așa cum se arată mai sus. Se datorează faptului că ne-am ținut cursorul în prima subcategorie.

Acum puneți cursorul oriunde în a doua subcategorie și rulați din nou codul. Vom primi acum caseta de mesaje cu mesajul „Test2” așa cum se arată mai jos.

Așa putem crea și defini o variabilă o dată cu ajutorul Global și care poate fi utilizată în orice modul, orice clasă și în orice proiect. Putem folosi și Public în locul Global, așa cum se arată mai jos. Și acest lucru va da același rezultat ca și când am obținut utilizarea Global.

Cod:

 Opțiune Explicit Public A Ca String Sub Global_Variable () A = "Test1" MsgBox A Sub Sub Global Global_Variable6 () A = "Test2" MsgBox A Sub Sub 

Beneficiile VBA Global Variable

  • Economisește timp în declararea mai multor variabile atunci când știm, este posibil să fie nevoie să definim din nou același tip de variabilă în diferite module sau subcategorii.
  • Utilizând Global sau Public în definirea unui proces variabil, codul nostru devine mai mic economisind timp și spații.
  • Acesta reduce complexitatea atunci când scriem codul imens și poate fi confundat între utilizarea diferitelor variabile în diferite module sau subcategorii.

Contra variabilei globale VBA

  • Dacă facem vreo modificare a variabilei globale, atunci modificările vor fi implementate în toate locurile în care este utilizată cauzând problema în funcționalitatea codului scris.

Lucruri de amintit

  • Global și Public pot fi utilizate interschimbabil cu aceeași funcționalitate.
  • Dacă nu dorim să utilizăm variabila globală, atunci putem urmări procesul așa cum se arată în exemplul 1 pentru definirea variabilei. Dar asta ar fi limitat la același modul.
  • Variabilele globale pot fi utilizate în orice modul, în orice subcategorie, în orice clasă sau în orice proiect.
  • O variabilă globală oferă ieșirea codului unde am păstrat cursorul. Nu va rula codul complet dintr-o dată, oferind toate ieșirile unul câte unul.

Articole recomandate

Acesta este un ghid pentru VBA Global Variables. Aici vom discuta despre modul de declarare a variabilelor globale în Excel folosind codul VBA, împreună cu câteva exemple practice și șablonul excel descărcabil. De asemenea, puteți parcurge și alte articole sugerate -

  1. Formular de utilizare VBA
  2. Rezolvați ecuația în Excel
  3. Foaie de activare VBA
  4. Cum să editați lista derulantă în Excel?

Categorie: