Mõnikord on Excel 2016 koodi sisestamiseks kõige otsesem tee. VBA-koodi otse sisestamine hõlmab … noh, koodi otse sisestamist. Teisisõnu sisestate koodi klaviatuuri abil. Teksti sisestamine ja redigeerimine VBA moodulis toimib ootuspäraselt. Saate teksti valida, kopeerida, lõigata, kleepida ja teha muid toiminguid.
Koodi lugemise hõlbustamiseks kasutage mõnele reale taande sisestamiseks klahvi Tab. Taande tegemine pole vajalik, kuid see on hea harjumus omandada.
Üks VBA-koodi rida võib olla nii pikk, kui vajate. Pikkade koodiridade lahutamiseks võite siiski kasutada rea jätkumärke. Ühe koodirea (tuntud ka kui lause) jätkamiseks ühelt realt järgmisele lõpetage esimene rida tühikuga, millele järgneb allkriips (_). Seejärel jätkake avaldust järgmisel real. Ja ärge unustage ruumi. Alakriips, millele ei eelne tühikut, seda tööd ei tee.
Siin on näide ühest avaldusest, mis on jagatud kolmeks reale:
Selection.Sort Key1:=Range(“A1”), _
Järjestus1:=xlkasvav, päis:=xlarvamine, _
Orientatsioon:=xlTopToBottom
See lause toimiks täpselt samamoodi, kui see sisestataks ühele reale (ilma rea jätkumärkideta). Pange tähele, et selle avalduse teine ja kolmas rida on taandega. Taande lisamine on valikuline, kuid see aitab selgitada tõsiasja, et need read ei ole eraldi avaldused.
Valge kattega insenerid, kes VBE projekteerisid, eeldasid, et inimesed teevad vigu. Seetõttu on VBE-l mitu tagasivõtmise ja uuesti tegemise taset. Kui kustutasite avalduse, mida teil poleks pidanud olema, klõpsake tööriistaribal nuppu Võta tagasi (või vajutage klahvikombinatsiooni Ctrl+Z), kuni väide uuesti kuvatakse. Pärast tagasivõtmist saate tagasivõetud muudatuste tegemiseks kasutada nuppu Tee uuesti.
Kas olete valmis reaalajas koodi sisestama? Proovige järgmisi samme.
Looge Excelis uus töövihik.
VBE aktiveerimiseks vajutage Alt+F11.
Klõpsake projekti aknas uue töövihiku nime.
VBA mooduli projekti lisamiseks valige Lisa → Moodul.
Tippige moodulisse järgmine kood:
Sub GuessName()
Msg = "Kas teie nimi on " & Application.UserName & "?"
Ans = MsgBox (SMS, vbYesNo)
Kui Ans = vbNo, siis MsgBox "Oh, pole midagi."
Kui Ans = vbYes, siis MsgBox "Ma pean olema selgeltnägija!"
Lõpeta alam
Asetage kursor suvalisse kohta sisestatud teksti sees ja vajutage protseduuri teostamiseks klahvi F5.
F5 on käsu Run → Run Sub/UserForm otsetee. Kui sisestasite koodi õigesti, käivitab Excel protseduuri ja saate vastata lihtsale dialoogiboksile. Pidage meeles, et dialoogiboksis olev tekst on erinev.

Protseduur GuessName kuvab selle dialoogiboksi.
Kui sisestate sammus 5 loetletud koodi, võite märgata, et VBE muudab sisestatud teksti mõningaid muudatusi. Näiteks pärast alamlause tippimist lisab VBE automaatselt alamlause End. Ja kui jätate tühiku enne või pärast võrdusmärki välja, lisab VBE teie jaoks tühiku. Samuti muudab VBE mõne teksti värvi ja suurtähti. See kõik on täiesti normaalne. See on lihtsalt VBE viis hoida asjad korras ja loetavaks.
Kui järgisite eelmisi samme, kirjutasite just VBA alamprotseduuri, mida tuntakse ka makrona. Kui vajutate klahvi F5, käivitab Excel koodi ja järgib juhiseid. Teisisõnu hindab Excel iga väidet ja teeb seda, mida sa käskisid tal teha. (Ärge laske sellel uuel jõul pähe minna.) Saate seda makrot käivitada suvalise arvu kordi – kuigi see kipub mõnekümne korra pärast oma atraktiivsust kaotama.
Märkusena kasutab see lihtne makro järgmisi mõisteid.
-
Alamprotseduuri määratlemine (esimene rida)
-
Väärtuste määramine muutujatele (Sõnum ja Ans)
-
Concatenating (liitumise) string (kasutades operaator &)
-
Sisseehitatud VBA funktsiooni kasutamine (MsgBox)
-
Sisseehitatud VBA konstantide kasutamine (vbYesNo, vbNo ja vbYes)
-
Kui-siis konstruktsiooni kasutamine (kaks korda)
-
Alamprotseduuri lõpetamine (viimane rida)
Pole paha algajale, eks?