Kako stvoriti VBA makro ili skriptu u Excelu

Microsoft Excel korisnicima omogućuje automatizaciju značajki i naredbi pomoću makronaredbi i skriptiranja Visual Basica(Visual Basic) za aplikacije(Applications) ( VBA ). VBA je programski jezik koji Excel(VBA is the programming language Excel) koristi za izradu makronaredbi. Također će izvršiti automatizirane naredbe na temelju specifičnih uvjeta.

Makroi su niz unaprijed snimljenih naredbi. Pokreću se automatski kada se da određena naredba. Ako imate zadatke u Microsoft Excelu(Microsoft Excel) koje ponavljate, kao što su računovodstvo, upravljanje projektima ili obračun plaća, automatizacija ovih procesa može uštedjeti puno vremena.

Na kartici Razvojni programer(Developer) na vrpci(Ribbon) u Excelu(Excel) korisnici mogu bilježiti klikove mišem i tipke (makronaredbe). Međutim, neke funkcije zahtijevaju dublje skriptiranje nego što ih makronaredbe mogu pružiti. Ovdje VBA skriptiranje postaje velika prednost. Omogućuje korisnicima stvaranje složenijih skripti.

U ovom članku ćemo objasniti sljedeće:

  • Omogućavanje skripti i makronaredbi
  • Kako napraviti makronaredbu u Excelu
  • Specifičan primjer makronaredbe
  • Saznajte više o VBA
  • Napravite gumb(Button) za početak rada s VBA
  • Dodajte kod(Add Code) da biste gumbu dali funkcionalnost(Button Functionality)
  • Je li upalilo?

Omogućavanje skripti i makronaredbi(Enabling Scripts & Macros)

Prije nego što možete stvoriti makronaredbe ili VBA skripte u Excelu(Excel) , morate omogućiti karticu Razvojni programer(Developer ) na izborniku vrpce(Ribbon) . Kartica Developer nije omogućena prema zadanim postavkama. Da biste to omogućili:

  • Otvorite Excel radni list.
  • Kliknite Datoteka(File ) > Opcije( Options ) > Prilagodi vrpcu.( Customize Ribbon.)

  • Stavite kvačicu u okvir pored Razvojni programer(Developer) .

  • Kliknite karticu Developer na izborniku trake(Ribbon) .

  • Zatim kliknite na Sigurnost makronaredbi(Macro Security) i označite okvir pored Omogući sve makronaredbe (ne preporučuje se; može se pokrenuti potencijalno opasan kod). (Enable all macros (not recommended; potentially dangerous code can run). )
  • Zatim kliknite OK.

Razlog zašto makronaredbe nisu uključene prema zadanim postavkama i dolaze s upozorenjem je da su računalni kod koji bi mogao sadržavati zlonamjerni softver.

Provjerite(Make) je li dokument iz pouzdanog izvora ako radite na zajedničkom projektu u Excelu(Excel) i drugim Microsoftovim(Microsoft) programima.

Kada završite s korištenjem svojih skripti i makronaredbi, onemogućite sve makronaredbe kako biste spriječili potencijalno zlonamjerni kôd da zarazi druge dokumente.

Napravite makronaredbu u Excelu(Create a Macro in Excel)

Sve radnje koje poduzmete u Excelu(Excel) tijekom snimanja makronaredbe dodaju mu se. 

  • Na kartici Developer kliknite na Snimi makronaredbu(Record Macro) .

  • Unesite naziv makronaredbe(Macro name) , tipku prečaca(Shortcut key) i opis. (Description. )Imena makronaredbi(Macro) moraju početi slovom i ne smiju imati razmake. Tipka prečaca mora biti slovo.

Odlučite gdje želite pohraniti makronaredbu iz sljedećih opcija:

  • Osobna radna knjiga makronaredbi(Personal Macro Workbook) : Ovo će stvoriti skriveni Excel dokument sa pohranjenim makronaredbama koji će se koristiti sa svim Excel dokumentima.
  • Nova radna knjiga(New Workbook) : stvorit će novi Excel dokument za pohranu kreiranih makronaredbi.
  • Ova radna knjiga(This Workbook) : ovo će se primijeniti samo na dokument koji trenutno uređujete.

Kada završite, kliknite OK

  • Prođite(Run) kroz radnje koje želite automatizirati. Kada završite, kliknite Zaustavi snimanje(Stop Recording)
  • Kada želite pristupiti makronaredbi, upotrijebite tipkovnički prečac koji ste mu dali.

Konkretan primjer makronaredbe(Specific Example Of a Macro)

Počnimo s jednostavnom proračunskom tablicom za kupce i koliko duguju. Započet ćemo stvaranjem makronaredbe za formatiranje radnog lista.

Pretpostavimo da ste odlučili da sve proračunske tablice trebaju koristiti drugačiji format kao što je stavljanje imena i prezimena u zasebne stupce. 

To možete ručno promijeniti. Ili možete stvoriti program pomoću makronaredbe kako bi ga automatski formatirao ispravno za vas.

Snimite makro(Record The Macro)

  • Kliknite na Snimi makro(Record Macro) . Nazovimo ga Format_Customer_Data i kliknite OK
  • Da bismo dobili željeno oblikovanje, promijenit ćemo naziv prvog stupca u Ime(First Name)
  • Zatim umetnite stupac pored A i nazovite ga Prezime(Last Name)
  • Označite(Highlight) sva imena u prvom stupcu (koji još uvijek uključuju ime i prezime) i kliknite Podaci(Data) na navigacijskoj vrpci.
  • Kliknite na Tekst u stupce(Text to Columns) .

  • Označite Razdvojeno(Delimited) > Sljedeće(Next ) > Odvoji razmakom(Separate by Space) > Sljedeće(Next ) > Završi(Finish) . Pogledajte snimku zaslona u nastavku i kako su imena i prezimena razdvojena gornjim postupkom.

  • Da biste formatirali polje Dospjelo stanje(Balance Due) , označite iznose. Kliknite(Click) na Početna(Home ) > Uvjetno oblikovanje(Conditional Formatting) > Istaknite ćelijska pravila(Highlight Cell Rules) > Veće od(Greater Than ) > 0 .

Ovo će istaknuti stanice koje imaju ravnotežu. Dodali smo nekoliko kupaca bez balansa zbog dodatnog ilustracije oblikovanja.  

  • Vratite se na Developer i kliknite Zaustavi snimanje(Stop Recording) .

Primijenite makro(Apply The Macro)

Počnimo s izvornom proračunskom tablicom prije nego što smo snimili makro kako bismo ga ispravno formatirali. Kliknite(Click) na Macros , odaberite i Pokrenite(Run) makronaredbu koju ste upravo stvorili.

Kada pokrenete makronaredbu, svo oblikovanje se obavlja umjesto vas. Ova makronaredba koju smo upravo stvorili pohranjena je u Visual Basic Editoru(Visual Basic Editor) .

Korisnici mogu pokretati makronaredbe na nekoliko različitih načina. Pročitajte Pokreni makro(Run a macro) da biste saznali više.  

Saznajte više o VBA(Learn More About VBA)

Da biste saznali više o VBA, kliknite na Makro(Macro) na kartici Razvojni programer(Developer) . Pronađite onu koju ste izradili i kliknite Uredi.(Edit.)

Kôd koji vidite u gornjem okviru je ono što je stvoreno kada ste snimili svoju makronaredbu. 

To je također ono što ćete pokrenuti kada na isti način želite formatirati druge proračunske tablice plaćanja kupaca.

Napravite gumb za početak rada s VBA(Create a Button To Get Started With VBA)

Koristeći gornju proračunsku tablicu s kupcima i koliko duguju, napravimo pretvarač valuta.

  • Da biste umetnuli element gumba, idite na karticu Razvojni programer(Developer )
  • Odaberite ActiveX Command Button s padajućeg izbornika pored Umetanje(Insert) u odjeljku Kontrole (Controls).

  • Povucite(Drag) gumb bilo gdje u proračunskoj tablici kako biste joj lako pristupili i kasnije je promijenili ako želite.

  • Da biste priložili kod, desnom tipkom miša kliknite gumb i odaberite Svojstva(Properties) . Ime(Name) ćemo zadržati kao gumb CommandButton i natpis(Caption ) za pretvaranje( Convert ) (ovo je tekst gumba).

Dodajte kod da biste gumbu omogućili funkcionalnost(Add Code To Give The Button Functionality)

VBA kodiranje se ne odvija u sučelju programa Excel . (Excel)Radi se u zasebnom okruženju.  

  • Idite na karticu Developer i provjerite je li aktivan način dizajna .(Design Mode)

  • Za pristup kodu gumba koji smo upravo stvorili, kliknite ga desnom tipkom miša i odaberite Prikaži kod(View Code) .

  • Gledajući kod na snimci zaslona ispod, primijetite da je početak ( Private Sub ) i kraj ( End Sub ) već tamo.

  • Kod u nastavku će pokrenuti postupak pretvorbe valute.

ActiveCell.Value = (ActiveCell * 1.28)

Naša je svrha u ovom odjeljku pretvoriti valutu u našoj proračunskoj tablici. Gornja skripta odražava tečaj od GBP do USD . Nova vrijednost ćelije bit će ono što je trenutno tamo pomnoženo s 1,28.

Snimka zaslona ispod pokazuje kako izgleda kod u VBA prozoru nakon što ga umetnete.

  • Idite na Datoteka(File ) u gornjoj navigaciji i kliknite Zatvori i Vrati se u Microsoft Excel(click on Close and Return to Microsoft Excel) za povratak na glavno sučelje programa Excel .(Excel)

Je li upalilo?(Did It Work?)

Prije nego što možete testirati svoj kod, prvo morate onemogućiti Design Mode (kliknite na njega) kako biste izbjegli daljnje izmjene i omogućili funkcionalnost gumba.

  • Upišite(Type) bilo koji broj u svoju proračunsku tablicu, a zatim kliknite gumb Pretvori(Convert) . Ako se vrijednost vašeg broja poveća za otprilike jednu četvrtinu, uspjelo je.

Za ovaj primjer, stavio sam broj 4 u ćeliju. Nakon klika na Pretvori(Convert) , broj se promijenio u 5.12. Budući da je 4 puta 1,28 5,12, kod je ispravno izveden.

Sada kada razumijete kako stvoriti makronaredbu ili skriptu u Excelu(Excel) , možete ih koristiti za automatizaciju mnoštva radnji u Excelu(Excel) .



About the author

"Ja sam slobodni stručnjak za Windows i Office. Imam više od 10 godina iskustva u radu s ovim alatima i mogu vam pomoći da iz njih izvučete maksimum. Moje vještine uključuju: rad s Microsoft Wordom, Excelom, PowerPointom i Outlookom; stvaranje weba stranice i aplikacije; i pomaganje korisnicima da ostvare svoje poslovne ciljeve."



Related posts