O variabilă statică VBA își păstrează valoarea chiar și atunci când procedura se termină.
Declararea unei variabile statice
Declarați o variabilă static utilizând cuvântul cheie static așa cum se arată mai jos:
123456789 | Sub DeclaringAStaticVariable ()Static myVariable As IngerMsgBox myVariablemyVariable = myVariable + 2Gama („A1”). Valoare = variabila meaSfârșitul Sub |
Prima dată când apăsați F5, primiți o casetă Mesaj care arată valoarea inițială a variabilei mele, care este 0. Valoarea 2 este plasată în celula A1.
Dacă apăsați din nou F5 imediat după aceea, veți primi următoarea casetă Mesaj care arată valoarea variabilei mele care este 2 și valoarea 4, plasată în foaia de lucru din celula A1.
După cum puteți vedea, variabila își păstrează valoarea chiar și după terminarea procedurii secundare, dacă ați folosit cuvântul cheie Dim în loc de cuvântul cheie static pentru a declara variabila, caseta de mesaje ar afișa întotdeauna valoarea 0. De asemenea, rezultatul în celulă A1, ar fi 2, de fiecare dată când ați făcut clic pe F5. Deoarece variabila nu și-ar păstra valoarea odată cu încheierea subprocedurii.