Včasih je najboljša pot za vnos kode za Excel 2016 najbolj neposredna. Neposreden vnos kode VBA vključuje ... no, neposreden vnos kode. Z drugimi besedami, kodo vnesete s tipkovnico. Vnašanje in urejanje besedila v modulu VBA deluje, kot bi lahko pričakovali. Besedilo lahko izberete, kopirate, izrežete, prilepite in naredite druge stvari.
S tipko Tab zamaknite nekatere vrstice, da bo vaša koda lažja za branje. Zamik ni potreben, je pa dobra navada.
Ena vrstica kode VBA je lahko tako dolga, kot jo potrebujete. Vendar pa boste morda želeli uporabiti znake za nadaljevanje vrstice, da razbijete dolge vrstice kode. Če želite nadaljevati eno vrstico kode (znano tudi kot stavek) iz ene vrstice v drugo, zaključite prvo vrstico s presledkom, ki mu sledi podčrtaj (_). Nato nadaljujte izjavo v naslednji vrstici. In ne pozabite na prostor. Podčrtaj, pred katerim ni presledka, ne bo opravil svojega dela.
Tukaj je primer enega stavka, razdeljenega v tri vrstice:
Selection.Sort Key1:=Razpon(“A1”), _
Vrstni red1:=xlNaraščajoče, Glava:=xlGuess, _
Usmeritev:=xlTopToBottom
Ta stavek bi deloval popolnoma enako, če bi ga vnesli v eno vrstico (brez znakov za nadaljevanje vrstice). Upoštevajte, da sta druga in tretja vrstica tega stavka zamaknjeni. Zamik ni obvezen, vendar pomaga razjasniti dejstvo, da te vrstice niso ločeni stavki.
Beli inženirji, ki so zasnovali VBE, so predvidevali, da bodo ljudje delali napake. Zato ima VBE več stopenj razveljavitve in ponovitve. Če ste izbrisali izjavo, ki je ne bi smeli imeti, kliknite gumb Razveljavi v orodni vrstici (ali pritisnite Ctrl+Z), dokler se stavek spet ne prikaže. Po razveljavitvi lahko uporabite gumb Ponovi, da izvedete spremembe, ki ste jih razveljavili.
Ste pripravljeni vnesti kodo v resničnem življenju? Poskusite naslednje korake:
Ustvarite nov delovni zvezek v Excelu.
Pritisnite Alt+F11, da aktivirate VBE.
Kliknite ime novega delovnega zvezka v oknu Projekt.
Izberite Vstavi → Modul, da v projekt vstavite modul VBA.
V modul vnesite naslednjo kodo:
Sub GuessName()
Sporočilo = "Je vaše ime " & Application.UserName & "?"
Ans = MsgBox(Msg, vbYesNo)
Če je Ans = vbNo, potem MsgBox "Oh, ni važno."
Če Ans = vbYes Potem MsgBox "Moram biti jasnoviden!"
Končni sub
Postavite kazalec kjer koli znotraj besedila, ki ste ga vnesli, in pritisnite F5, da izvedete postopek.
F5 je bližnjica za ukaz Run → Run Sub/UserForm. Če ste pravilno vnesli kodo, Excel izvede postopek in se lahko odzovete na preprosto pogovorno okno. Ne pozabite, da bo besedilo v pogovornem oknu drugačno.
Postopek GuessName prikaže to pogovorno okno.
Ko vnesete kodo, navedeno v 5. koraku, boste morda opazili, da VBE nekaj prilagodi besedilu, ki ga vnesete. Na primer, ko vnesete stavek Sub, VBE samodejno vstavi stavek End Sub. In če izpustite presledek pred ali za znakom enakosti, VBE vstavi presledek namesto vas. Prav tako VBE spremeni barvo in velike črke nekega besedila. Vse to je povsem normalno. To je samo način VBE, da poskrbi, da so stvari čiste in berljive.
Če ste sledili prejšnjim korakom, ste pravkar napisali podpostopek VBA, znan tudi kot makro. Ko pritisnete F5, Excel izvede kodo in sledi navodilom. Z drugimi besedami, Excel oceni vsako izjavo in naredi tisto, kar ste mu naročili. (Ne dovolite, da bi vam ta novo odkrita moč padla v glavo.) Ta makro lahko izvedete poljubno število – čeprav po nekaj desetkrat izgubi svojo privlačnost.
Za zapisnik ta preprost makro uporablja naslednje koncepte:
-
Definiranje podprocedure (prva vrstica)
-
Dodeljevanje vrednosti spremenljivkam (Sporočilo in Ans)
-
Povezovanje (združevanje) niza (z uporabo & operaterja)
-
Uporaba vgrajene funkcije VBA (MsgBox)
-
Uporaba vgrajenih konstant VBA (vbYesNo, vbNo in vbYes)
-
Uporaba konstrukcije If-Then (dvakrat)
-
Končanje podprocedure (zadnja vrstica)
Ni slabo za začetnika, kajne?