VBA Option Explicit | Cum se face obligatorie declarația variabilă?

Opțiunea Excel VBA explicită

Declarația de variabile este foarte importantă în VBA, Option Explicit face obligatoriu un utilizator să declare toate variabilele înainte de a le utiliza, orice variabilă nedefinită va arunca o eroare în timpul executării codului, putem scrie opțiunea de cuvânt cheie explicit sau o putem activa pentru toate codurile din opțiuni permițând necesitatea declarației variabile.

În VBA este vorba despre variabile. Pentru a stoca date, avem nevoie de variabile cu un tip de date adecvat. Puteți să mă întrebați de ce aveți nevoie de variabilă atunci când puteți adăuga direct valoarea la foaia de calcul. Acest lucru se datorează în principal utilizatorilor multipli ai registrului de lucru, dacă este gestionat de o singură persoană, atunci puteți face referire directă la valoare în foaia însăși. Prin declararea variabilelor putem face codul flexibil pentru stocarea datelor.

Ce este VBA Option Explicit?

Sper că ați dat peste cuvântul cu linie albastră „Option Explicit” în partea de sus a modulului înainte de a începe orice macrocomenzi în acel modul.

La începutul învățării VBA, nici eu nu înțelegeam ce este asta și, pentru a fi foarte sincer, nici nu mă gândeam deloc la asta. Nu numai pentru mine sau pentru tine, dar este la fel pentru toată lumea la început. Dar vom vedea importanța acestui cuvânt acum.

„Option Explicit” este mentorul nostru în declararea variabilei. Prin adăugarea acestui cuvânt face din declarația variabilă un proces obligatoriu.

Puteți descărca acest șablon Excel explicit pentru opțiunea VBA aici - Șablon Excel explicit pentru opțiunea VBA

Pentru un exemplu, consultați codul de mai jos pentru înțelegere.

Cod:

 Sub Exemplul 1 () i = 25 MsgBox i End Sub 

Dacă rulez acest cod, vom obține valoarea unei variabile „I” în caseta de mesaj din VBA.

Acum voi adăuga cuvântul „Option Explicit” chiar la începutul codului VBA.

Acum voi rula codul și voi vedea ce se întâmplă. Dacă exersezi cu mine, apasă tasta F5 pentru a rula codul.

Am primit o eroare de compilare și scrie „Variabila nu este definită” . Nu am declarat variabila „i”, dar imediat i-am atribuit valoarea ca 25.

Deoarece am adăugat cuvântul „Option Explicit”, ne obligă să declarăm variabila în mod obligatoriu.

În codul de mai sus, alfabetul „i” este nedeclarat, așa că am adăugat cuvântul variabil al controlerului „Opțiune explicită”, care ne împiedică să folosim variabilele nedeclarate.

În momentul în care adăugați cuvântul „Opțiune explicită” în partea de sus a modulului, este aplicabil ca toate macrocomenzile din acel modul particular să declare obligatoriu variabilele.

Cum se face obligatorie declarația variabilă?

Dacă ați adăugat manual variabilul „Option Explicit” manual în modulul dvs. atunci când introduceți noul modul, nu veți obține acest mentor variabil în mod implicit.

Dacă vă gândiți de fiecare dată când trebuie să adăugați manual cuvântul „Opțiune explicită” pentru toate noile module, atunci vă înșelați.

Deoarece putem face acest cuvânt obligatoriu în toate modulele făcând o setare simplă. Urmați pașii de mai jos pentru a regla setările.

Pasul 1: Accesați Editorul de bază Visual.

Pasul 2: Accesați TOOLS și faceți clic pe Opțiuni.

Pasul 3: În momentul în care faceți clic pe Opțiuni, veți vedea fereastra de mai jos.

Pasul 4: Sub această fereastră Accesați Editor și bifați opțiunea „Necesită declarație variabilă” .

Pasul 5: Faceți clic pe OK pentru a închide fereastra.

De acum încolo ori de câte ori adăugați un modul nou, acesta introduce automat cuvântul „Opțiune explicită” în mod implicit.

Opțiunea explicită este economisitorul dvs.

Option Explicit ne ajută în multe feluri, chiar de la obligativitatea declarației variabilei, ne va ajuta până la executare. Uită-te la codul de mai jos.

Cod:

 Sub Exemplu 2 () Dim CurrentValue As Integer CurentValue = 500 MsgBox CurrentValue End Sub 

În codul de mai sus, am declarat variabila „CurrentValue” ca număr întreg. În rândul următor, i-am atribuit valoarea 500. Dacă rulez acest cod, ar trebui să obțin 500 ca rezultat într-o casetă de mesaj. Dar vezi ce se întâmplă.

Se spune „Variabila nu este definită” și se evidențiază a doua linie.

Dacă privim cu atenție a doua linie, există o ușoară greșeală de ortografie. Numele meu variabil este „CurrentValue”, dar în a doua linie am pierdut o ortografie, adică „r”. Se spune „CurrentValue” în loc de „CurrentValue”. Deoarece am făcut obligatorie declarația variabilă prin adăugarea cuvântului „Option Explicit” în excel VBA, mi-a evidențiat eroarea de tipare pe care am făcut-o.

Deci, atunci când corectăm ortografia și rulăm codul, vom obține rezultatul după cum urmează.

Salutați mentorul variabil nou numit !!!