Eden od načinov, kako lahko kodo VBA vnesete v modul VBA, je uporaba Excelovega snemalnika makrov, da zabeležite svoja dejanja in jih pretvorite v kodo VBA. Vendar pa vseh opravil ni mogoče prevesti v VBA s snemanjem makra. Kodo lahko vnesete tudi neposredno ali kopirate kodo iz enega modula in jo prilepite v drugega.
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.
Ena vrstica kode VBA je lahko tako dolga, kot želite. Vendar pa boste morda želeli uporabiti znak 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. Tukaj je primer enega stavka, razdeljenega v tri vrstice:
Selection.Sort Key1:=Obseg("A1"), _
Vrstni red1:=xlNaraščajoče, Glava:=xlGuess, _
Usmeritev:=xlTopToBottom
Ta stavek bi deloval na enak način, če bi ga vnesli v eno vrstico (brez znakov za nadaljevanje vrstice).
VBE ima več stopenj razveljavitve in ponovitve. Če ste izbrisali izjavo, ki je ne bi smeli imeti, uporabite gumb Razveljavi v orodni vrstici (ali pritisnite Ctrl+Z), dokler se stavek ponovno ne prikaže. Po razveljavitvi lahko uporabite gumb Ponovi, da izvedete spremembe, ki ste jih razveljavili.
Ste pripravljeni vnesti pravo kodo v živo? Poskusite naslednje korake:
Ustvarite nov delovni zvezek v Excelu.
Pritisnite Alt+F11, da aktivirate VBE.
Kliknite ime novega delovnega zvezka v oknu projekta.
Izberite Vstavi→Modul, da v projekt vstavite modul VBA.
V modul vnesite naslednjo kodo:
Sub GuessName()
Zatemni sporočilo kot niz
Dim Ans As Long
Msg = "Je vaše ime " & Application.UserName & "?"
Ans = MsgBox(Msg, vbYesNo)
Če Ans = vbNo Potem MsgBox "Oh, ni važno."
Če Ans = vbYes Potem MsgBox "Moram biti jasnoviden!"
Končni sub
Prepričajte se, da se kazalec nahaja kjerkoli znotraj besedila, ki ste ga vnesli, in nato pritisnite F5, da izvedete postopek.
F5 je bližnjica za ukaz Run → Run Sub/UserForm.
Ko vnesete kodo, navedeno v 5. koraku, boste morda opazili, da VBE nekaj prilagodi besedilu, ki ga vnesete. Ko na primer 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. Te spremembe so VBE-jev način, da poskrbi, da so stvari čiste in berljive.
Če ste sledili prejšnjim korakom, ste pravkar ustvarili podproceduro VBA, znano 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. Ta makro lahko izvedete poljubno število krat - čeprav po nekaj desetih izvedbah izgubi svojo privlačnost.
Ta preprost makro uporablja naslednje koncepte:
-
Definiranje podprocedure (prva vrstica)
-
Deklaracija spremenljivk (stavki Dim)
-
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)
Kot že omenjeno, lahko kodo kopirate in prilepite v modul VBA. Na primer, postopek pod ali funkcija, ki ga napišete za en projekt, je lahko koristen tudi v drugem projektu. Namesto da izgubljate čas s ponovnim vnosom kode, lahko aktivirate modul in uporabite običajne postopke kopiranja in lepljenja (Ctrl+C za kopiranje in Ctrl+V za lepljenje). Ko prilepite kodo v modul VBA, lahko po potrebi spremenite kodo.