Ako ćete provoditi vrijeme radeći s makronaredbama u Visual Basic Editoru, zašto ne iskoristiti nekoliko ugrađenih alata koji će vam olakšati posao? Ovi savjeti uvelike će poboljšati vaše iskustvo programiranja makronaredbi.
Primjena blok komentara
Postavljanje jednog apostrofa ispred bilo kojeg retka koda govori Excelu da preskoči taj redak koda. Ova tehnika se zove komentiranje koda. Većina programera koristi jedan apostrof za stvaranje komentara ili bilješki u kodu, kao što je prikazano ovdje.
Jedan apostrof ispred bilo kojeg retka pretvara taj redak u komentar.
Ponekad je korisno komentirati više redaka koda. Na ovaj način možete testirati određene retke koda dok govorite Excelu da ignorira komentirane retke.
Umjesto da trošite vrijeme komentirajući jedan po redak, možete koristiti alatnu traku Uredi da komentirate cijeli blok koda.
Da biste aktivirali alatnu traku Uredi, idite na VBE izbornik i odaberite Pogled→Alatne trake→Uredi. Odaberite retke koda koje želite komentirati, a zatim kliknite ikonu Blok komentara na alatnoj traci Uredi, kao što je ovdje prikazano.
Koristite alatnu traku Uredi za primjenu komentara na blok koda.
Kopiranje više redaka koda
Možete kopirati cijele blokove koda tako da označite linije koje trebate, a zatim držite pritisnutu tipku Ctrl dok povlačite blok. Ovaj stari trik za Windows funkcionira čak i kada vučete preko modula.
Znat ćete da povlačite kopiju kada pokazivač pokaže simbol plus pored nje, kao što je prikazano ovdje.
Ctrl-povucite za stvaranje kopije.
Preskakanje između modula i procedura
Nakon što vaša predmemorija makro koda počne rasti, može biti teško brzo premjestiti se između modula i procedura. Bol možete ublažiti pomoću nekoliko vrućih tipki.
Teleportiranje na svoje funkcije
Kada pregledavate makronaredbu, možete naići na varijablu ili naziv funkcije koji očito ukazuje na neki drugi dio koda. Umjesto da pretražujete kroz sve module kako biste pronašli odakle dolazi ta funkcija ili naziv varijable, možete jednostavno postaviti pokazivač na tu funkciju ili naziv varijable i pritisnuti Shift+F2.
Kao što ova slika ilustrira, odmah ste teleportirani na izvor imena te funkcije ili varijable. Pritiskom na Ctrl+Shift+F2 vratit će se na mjesto odakle ste započeli.
Pritisnite Shift+F2 na nazivu funkcije ili varijable koje želite prijeći na nju.
Ostati u ispravnoj proceduri
Kada vaši moduli sadrže više postupaka, pomicanje kroz određenu proceduru bez nenamjernog pomicanja u drugu proceduru može biti teško. Često ćete pronaći sebe kako pomičete gore, a zatim dolje, pokušavajući se vratiti na ispravan dio koda.
Kako biste izbjegli ovu glupost, kliknite gumb Prikaz postupka u donjem lijevom kutu VBE-a, kao što je prikazano ovdje. To ograničava pomicanje samo na proceduru u kojoj se nalazite.
Ograničite pomicanje na aktivni postupak.
Koračanje kroz vaš kod
Da biste koračali kroz svoj kôd, morate svoju makronaredbu staviti u način za otklanjanje pogrešaka. Jednostavno postavite pokazivač bilo gdje u makronaredbi, a zatim pritisnite tipku F8.
U programiranju pojam otklanjanje pogrešaka znači pronalaženje i ispravljanje mogućih pogrešaka u kodu. Jedan od korisnijih alata za otklanjanje pogrešaka je mogućnost da se kroz vaš kod kreće red po red. Kada prelazite kroz kod, gledate kako se izvršava svaki redak.
Prvi redak koda je istaknut i mala strelica se pojavljuje na lijevoj margini prozora koda, kao što je ovdje prikazano. Ponovno pritisnite F8 da izvršite označeni redak koda i prijeđete na sljedeći redak. Nastavite pritiskati F8 kako biste gledali kako se svaki redak izvršava do kraja makronaredbe.
Pritisnite F8 da prelazite kroz svaki redak makronaredbe.
Da biste izašli iz načina za otklanjanje pogrešaka, idite gore na VBE izbornik i odaberite Otklanjanje pogrešaka→ Izađi.
Korak do određene linije koda
Što ako želite početi koračati kroz svoj kôd u određenom retku? Pa, to možete učiniti jednostavnim pomicanjem strelice!
Kada je redak koda označen u načinu za otklanjanje pogrešaka, možete kliknuti i povući strelicu na lijevoj margini prozora koda prema gore ili prema dolje, ispuštajući je na bilo koju liniju koda koju želite sljedeće izvršiti, kao što je prikazano ovdje.
Povucite strelicu dok prolazite kroz kôd.
Zaustavljanje koda na unaprijed definiranoj točki
Kada postavite prijelomnu točku, vaš će se kod izvoditi normalno, a zatim će se zaustaviti na retku koda gdje ste definirali točku prekida.
Ova tehnika otklanjanja pogrešaka je zgodna kada želite pokrenuti testove malih blokova koda odjednom. Na primjer, ako sumnjate da postoji pogreška u vašoj makronaredbi, ali znate da se većina makronaredbe izvodi bez ikakvih problema, možete postaviti prijelomnu točku počevši od sumnjivog retka koda, a zatim pokrenuti makronaredbu. Kada makronaredba dosegne vašu prijelomnu točku, izvršenje se zaustavlja. U ovom trenutku možete pritisnuti tipku F8 na tipkovnici kako biste gledali kako se makronaredba izvodi jedan po redak.
Da biste postavili prijelomnu točku u svom kodu, postavite pokazivač na mjesto gdje želite da prijelomna točka počinje, a zatim pritisnite tipku F9 na tipkovnici. VBA će jasno označiti prijelomnu točku točkom na lijevoj margini prozora koda, a sama linija koda bit će zasjenjena kestenjasto.
Prijelomna točka je označena točkom i zasjenjenim tekstom.
Kada vaša makronaredba dosegne prijelomnu točku, zapravo će biti stavljena u način za otklanjanje pogrešaka. Da biste izašli iz načina za otklanjanje pogrešaka, možete otići do VBE izbornika i odabrati Otklanjanje pogrešaka → Izađi.
Vidjeti početne i završne vrijednosti varijabli
Ako zadržite pokazivač iznad varijable String ili Integer u VBA dok ste u načinu za otklanjanje pogrešaka, možete vidjeti vrijednost te varijable u opisu alata. Ova značajka omogućuje vam da vidite vrijednosti koje se prosljeđuju u i iz varijabli, što je korisno kod otklanjanja pogrešaka koda.
Međutim, opisi mogu sadržavati samo 77 znakova (uključujući naziv varijable), pa ako je vrijednost u vašoj varijabli preduga, bit će odrezana. Da biste vidjeli dalje od prvih 77 znakova, jednostavno držite tipku Ctrl dok lebdite.
Evo kako izgleda opis alata kada zadržite pokazivač miša iznad varijable u načinu za otklanjanje pogrešaka.
Početni i završni znakovi u varijabilnom opisu alata.
Isključivanje automatske provjere sintakse
Često ćete, dok radite na nekom kodu, otkriti da trebate prijeći na drugi red da biste nešto kopirali. Niste završili s linijom; samo ga trebate ostaviti na sekundu. Ali VBE vas odmah zaustavlja u vašim tragovima porukom o pogrešci, sličnoj onoj prikazanoj ovdje, upozoravajući vas na nešto što već znate.
Nedovršeni redak koda rezultira strašnom porukom o pogrešci.
Ovi okviri s porukama prisiljavaju vas da zaustavite ono što radite kako biste potvrdili pogrešku pritiskom na gumb OK. Nakon pola dana ovih naglih okvira s porukama, bit ćete spremni baciti svoje računalo o zid.
Pa, možete spasiti svoje računalo i svoj razum isključivanjem automatske provjere sintakse. Idite gore na VBE izbornik i odaberite Alati→Opcije. Pojavit će se dijaloški okvir Mogućnosti koji prikazuje karticu Uređivač. Poništite odabir opcije Auto Syntax Check kako biste zaustavili ove dosadne poruke o pogrešci.
Spriječite poruke upozorenja tijekom kodiranja.
Ne brinite da ćete propustiti legitimnu grešku. Vaš će kod i dalje postati crven ako zabrljate, pružajući vizualni znak da nešto nije u redu.