Spremenljivke igrajo veliko vlogo v večini Excelovih makrov, s katerimi se srečujete. Spremenljivke si lahko predstavljate kot pomnilniške vsebnike, ki jih lahko uporabite v svojih postopkih. Obstajajo različne vrste spremenljivk, od katerih je vsaka zadolžena za shranjevanje določene vrste podatkov.
Spodaj je nekaj pogostih vrst spremenljivk, ki jih boste videli:
-
Niz: vsebuje besedilne podatke
-
Celo število: vsebuje številčne podatke v razponu od –32.768 do 32.767
-
Dolgo: hrani številčne podatke v razponu od –2,147,483,648 do 2,147,483,647
-
Dvojna: hrani številske podatke s plavajočo vejico
-
Različica: hrani vse vrste podatkov
-
Boolean: vsebuje binarne podatke, ki vrnejo True ali False
-
Predmet: vsebuje predmet iz Excelovega objektnega modela
Ko ustvarite spremenljivko v makru, deklarirate spremenljivko . To storite tako, da vnesete Dim (okrajšava za dimenzijo), nato ime vaše spremenljivke in nato vrsto. Na primer:
Zatemni moje besedilo kot niz
Zatemni mojo številko kot celo število
Zatemnite moj delovni list kot delovni list
Ko ustvarite spremenljivko, jo lahko napolnite s podatki. Tukaj je nekaj preprostih primerov, kako lahko ustvarite spremenljivko in ji nato dodelite vrednosti:
Zatemni moje besedilo kot niz
Moje besedilo = Obseg("A1").Vrednost
Zatemni mojo številko kot celo število
Moja številka = Obseg("B1").Vrednost * 25
Zatemni moj predmet kot delovni list
Nastavi MyWorksheet = Sheets("Sheet1")
Vrednosti, ki jih dodelite svojim spremenljivkam, pogosto izvirajo iz podatkov, shranjenih v vaših celicah. Vendar pa so vrednosti lahko tudi informacije, ki jih ustvarite. Vse je odvisno od naloge. Ta pojem bo postal bolj jasen, ko boste šli skozi makre v tej knjigi.
Čeprav je mogoče ustvariti kodo, ki ne uporablja spremenljivk, boste naleteli na številne primere kode VBA, kjer se uporabljajo spremenljivke . Za to sta dva glavna razloga.
Prvič, Excel sam po sebi ne ve, za kaj se vaši podatki uporabljajo. Ne vidi številk, simbolov ali črk. Vidi samo podatke. Ko deklarirate spremenljivke s posebnimi vrstami podatkov, Excelu pomagate vedeti, kako naj ravna z določenimi deli podatkov, tako da bodo vaši makri dali rezultate, ki jih pričakujete.
Drugič, spremenljivke pomagajo tako, da naredijo vašo kodo učinkovitejšo in lažje razumljivo. Recimo, da imate v celici A1 številko, na katero se večkrat sklicujete v makru. To številko lahko pridobite tako, da pokažete na celico A1 vsakič, ko jo potrebujete:
Podmakro1()
Obseg("B1").Vrednost = Obseg("A1").Vrednost * 5
Obseg("C1").Vrednost = Obseg("A1").Vrednost * 10
Obseg("D1").Vrednost = Obseg("A1").Vrednost * 15
Končni sub
Vendar bi ta makro prisilil Excel, da zapravi cikle in shrani isto število v pomnilnik vsakič, ko pokažete na celico A1. Tudi, če morate spremeniti svoj delovni zvezek tako, da ciljna številka ni v celici A1, ampak v, recimo, celici A2, bi morali urediti svojo kodo tako, da spremenite vse reference iz A1 v A2.
Boljši način je, da samo enkrat shranite številko v celico A1. Vrednost lahko na primer shranite v celico A1 v spremenljivko Integer, imenovano myValue:
Pod s spremenljivko()
Zatemni mojo vrednost kot celo število
mojaValue = Obseg("A1").Vrednost
Obseg("C3").Vrednost = mojaValue * 5
Obseg("D5").Vrednost = mojaVrednost * 10
Obseg("E7").Vrednost = mojaVrednost * 15
Končni sub
Ta pristop ne izboljša le učinkovitosti vaše kode (zagotavlja, da Excel samo enkrat prebere številko v celici A1), ampak tudi zagotavlja, da morate urediti samo eno vrstico, če se zasnova vašega delovnega zvezka spremeni.