Kako automatizirati rutinske zadatke u Excelu pomoću makroa

Excel ima moćnu, ali u isto vrijeme vrlo rijetko korištenu mogućnost kreiranja automatskih nizova radnji pomoću makroa. Makro je idealan izlaz ako se bavite istom vrstom zadatka koji se ponavlja mnogo puta. Na primjer, obrada podataka ili formatiranje dokumenta prema standardiziranom predlošku. U ovom slučaju vam nije potrebno poznavanje programskih jezika.

Da li vas već zanima šta je makro i kako funkcioniše? Onda hrabro samo naprijed – tada ćemo korak po korak raditi cijeli proces kreiranja makroa s vama.

Šta je makro?

Makro u Microsoft Officeu (da, ova funkcionalnost funkcionira isto u mnogim aplikacijama paketa Microsoft Office) je programski kod u programskom jeziku Visual Basic za aplikacije (VBA) pohranjen unutar dokumenta. Da bi bilo jasnije, Microsoft Office dokument se može uporediti sa HTML stranicom, tada je makro analog Javascript-a. Ono što Javascript može učiniti sa HTML podacima na web stranici je vrlo slično onome što makro može učiniti s podacima u Microsoft Office dokumentu.

Makroi mogu učiniti gotovo sve što želite u dokumentu. Evo nekih od njih (veoma mali dio):

  • Primijenite stilove i formatiranje.
  • Izvršite različite operacije s numeričkim i tekstualnim podacima.
  • Koristite eksterne izvore podataka (datoteke baze podataka, tekstualni dokumenti, itd.)
  • Kreirajte novi dokument.
  • Uradite sve gore navedeno u bilo kojoj kombinaciji.

Kreiranje makroa – praktičan primjer

Na primjer, uzmimo najčešći fajl CSV. Ovo je jednostavna tabela 10×20 ispunjena brojevima od 0 do 100 sa naslovima za kolone i redove. Naš zadatak je da ovaj skup podataka pretvorimo u prezentovano formatiranu tabelu i generišemo ukupne vrednosti u svakom redu.

Kao što je već pomenuto, makro je kod napisan u VBA programskom jeziku. Ali u Excelu možete kreirati program bez pisanja linije koda, što ćemo upravo sada učiniti.

Da kreirate makro, otvorite pogled (Vrsta) > Macros (Makro) > Snimite makro (Makro snimanje…)

Dajte svom makrou ime (bez razmaka) i kliknite OK.

Počevši od ovog trenutka, bilježe se SVE vaše radnje s dokumentom: promjene ćelija, pomicanje kroz tablicu, čak i promjena veličine prozora.

Excel signalizira da je režim snimanja makroa omogućen na dva mjesta. Prvo, na meniju Macros (Makroi) – umjesto niza Snimite makro (Snimanje makroa...) pojavila se linija Zaustavi snimanje (Zaustavi snimanje).

Drugo, u donjem lijevom kutu Excel prozora. Ikona Stop (mali kvadrat) označava da je režim snimanja makroa omogućen. Klikom na nju zaustavlja se snimanje. Suprotno tome, kada režim snimanja nije omogućen, na ovoj lokaciji postoji ikona za omogućavanje snimanja makroa. Klikom na nju dobit će isti rezultat kao i uključivanje snimanja kroz meni.

Sada kada je režim snimanja makroa omogućen, idemo na naš zadatak. Prije svega, dodajmo zaglavlja za zbirne podatke.

Next, enter the formulas in the cells in accordance with the names of the headings (variants of the formulas for the English and versions of Excel are given, cell addresses are always Latin letters and numbers):

  • =SUM(B2:K2) or =SUM(B2:K2)
  • =PROSJEČNO(B2:K2) or =SRZNAČ(B2:K2)
  • =MIN(B2:K2) or =MIN(B2:K2)
  • =MAX(B2:K2) or =MAX(B2:K2)
  • =MEDIAN(B2:K2) or =MEDIAN(B2:K2)

Sada odaberite ćelije s formulama i kopirajte ih u sve redove naše tablice povlačenjem ručke za automatsko popunjavanje.

Nakon što završite ovaj korak, svaki red bi trebao imati odgovarajuće ukupne vrijednosti.

Zatim ćemo sumirati rezultate za cijelu tablicu, za to radimo još nekoliko matematičkih operacija:

odnosno:

  • =SUM(L2:L21) or =SUM(L2:L21)
  • =PROSJEČNO(B2:K21) or =SRZNAČ(B2:K21) – za izračunavanje ove vrijednosti potrebno je uzeti tačno početne podatke tabele. Ako uzmete prosjek prosjeka za pojedinačne redove, rezultat će biti drugačiji.
  • =MIN(N2:N21) or =MIN(N2:N21)
  • =MAX(O2:O21) or =MAX(O2:O21)
  • =MEDIAN(B2:K21) or =MEDIAN(B2:K21) – razmatramo korištenje početnih podataka iz tabele, iz gore navedenog razloga.

Sada kada smo završili sa proračunima, hajde da napravimo malo formatiranja. Prvo, postavimo isti format prikaza podataka za sve ćelije. Odaberite sve ćelije na listu, da biste to učinili, koristite prečicu na tipkovnici Ctrl + Aili kliknite na ikonu Izaberite sve, koji se nalazi na raskrsnici naslova redova i kolona. Zatim kliknite Comma Style (Delimited Format) kartica Početna (Dom).

Zatim promijenite izgled zaglavlja kolona i redova:

  • Podebljani stil fonta.
  • Centralno poravnanje.
  • Ispuna u boji.

I na kraju, postavimo format zbroja.

Ovako bi to trebalo izgledati na kraju:

Ako vam sve odgovara, prestanite sa snimanjem makroa.

Čestitamo! Upravo ste sami snimili svoj prvi makro u Excel-u.

Da bismo koristili generirani makro, moramo spremiti Excel dokument u formatu koji podržava makroe. Prvo treba da obrišemo sve podatke iz tabele koju smo kreirali, tj. da bude prazan šablon. Činjenica je da ćemo u budućnosti, radeći sa ovim šablonom, u njega uvoziti najnovije i relevantne podatke.

Da izbrišete sve ćelije iz podataka, kliknite desnim tasterom miša na ikonu Izaberite sve, koji se nalazi na raskrsnici naslova redova i kolona, ​​a iz kontekstnog menija izaberite izbrisati (Izbriši).

Sada je naš list potpuno očišćen od svih podataka, dok makro ostaje snimljen. Moramo da sačuvamo radnu svesku kao Excel predložak sa omogućenim makroima koji ima ekstenziju XLTM.

Važna tačka! Ako sačuvate datoteku sa ekstenzijom XLTX, tada makro neće raditi u njemu. Usput, radnu svesku možete spremiti kao Excel 97-2003 predložak, koji ima format XLT, takođe podržava makroe.

Kada se predložak sačuva, možete bezbedno zatvoriti Excel.

Pokretanje makroa u Excelu

Prije nego što otkrijemo sve mogućnosti makroa koji ste kreirali, mislim da je ispravno obratiti pažnju na nekoliko važnih tačaka u vezi s makroima općenito:

  • Makroi mogu biti štetni.
  • Pročitajte prethodni pasus ponovo.

VBA kod je veoma moćan. Konkretno, može obavljati operacije nad datotekama izvan trenutnog dokumenta. Na primjer, makro može izbrisati ili izmijeniti sve datoteke u folderu Moji dokumenti. Iz tog razloga, pokrenite i dozvolite samo makroe iz izvora kojima vjerujete.

Da biste pokrenuli naš makro za formatiranje podataka, otvorite datoteku šablona koju smo kreirali u prvom dijelu ovog vodiča. Ako imate standardne sigurnosne postavke, onda kada otvorite datoteku, iznad tabele će se pojaviti upozorenje da su makroi onemogućeni i dugme za njihovo omogućavanje. Pošto smo sami napravili šablon i verujemo sebi, pritisnemo dugme Omogući sadržaj (Uključiti sadržaj).

Sljedeći korak je uvoz najnovijeg ažuriranog skupa podataka iz datoteke CSV (na osnovu takvog fajla kreirali smo naš makro).

Kada uvezete podatke iz CSV datoteke, Excel može zatražiti od vas da postavite neke postavke kako biste ispravno prenijeli podatke u tabelu.

Kada se uvoz završi, idite na meni Macros (Makroi) kartica pogled (Prikaz) i odaberite komandu View Macros (Makro).

U dijaloškom okviru koji se otvori vidjet ćemo liniju s imenom našeg makroa FormatData. Odaberite ga i kliknite trčanje (Izvrši).

Kada makro počne da se pokreće, videćete da kursor tabele skače sa ćelije na ćeliju. Nakon nekoliko sekundi, iste operacije će biti urađene sa podacima kao kod snimanja makroa. Kada je sve spremno, tabela bi trebala izgledati isto kao i original koji smo ručno formatirali, samo sa drugačijim podacima u ćelijama.

Pogledajmo ispod haube: Kako funkcioniše makro?

Kao što je više puta spomenuto, makro je programski kod u programskom jeziku. Visual Basic za aplikacije (VBA). Kada uključite režim snimanja makroa, Excel zapravo snima svaku vašu radnju u obliku VBA instrukcija. Jednostavno rečeno, Excel piše kod umjesto vas.

Da biste vidjeli ovaj programski kod, trebate u meniju Macros (Makroi) kartica pogled (pogledajte) kliknite View Macros (Makroi) i u dijaloškom okviru koji se otvori kliknite Uredi (Promjena).

Otvara se prozor. Visual Basic za aplikacije, u kojem ćemo vidjeti programski kod makroa koji smo snimili. Da, dobro ste shvatili, ovdje možete promijeniti ovaj kod, pa čak i kreirati novi makro. Radnje koje smo izveli sa tabelom u ovoj lekciji mogu se snimiti pomoću automatskog snimanja makroa u Excel-u. Ali složeniji makroi, sa fino podešenom sekvencom i logikom akcije, zahtevaju ručno programiranje.

Dodajmo još jedan korak našem zadatku…

Zamislite našu originalnu datoteku podataka data.csv kreira se automatski nekim procesom i uvijek se pohranjuje na disku na istom mjestu. Na primjer, C:Datadata.csv – put do datoteke sa ažuriranim podacima. Proces otvaranja ove datoteke i uvoza podataka iz nje također se može snimiti u makronaredbi:

  1. Otvorite datoteku predloška u koju smo spremili makro − FormatData.
  2. Kreirajte novi makro pod nazivom LoadData.
  3. Tokom snimanja makroa LoadData uvoz podataka iz datoteke data.csv – kao što smo radili u prethodnom dijelu časa.
  4. Kada se uvoz završi, zaustavite snimanje makroa.
  5. Izbrišite sve podatke iz ćelija.
  6. Sačuvajte datoteku kao Excel predložak sa omogućenim makroima (XLTM ekstenzija).

Dakle, pokretanjem ovog predloška dobijate pristup dvama makroima – jedan učitava podatke, drugi ih formatira.

Ako želite da se bavite programiranjem, možete kombinovati radnje ova dva makroa u jedan – jednostavnim kopiranjem koda sa LoadData na početak koda FormatData.

Ostavite odgovor