Makro môžeme vytvoriť nahrávaním alebo naprogramovaním. Nahraté makro môžeme upraviť programovaním cez Microsoft Visual Basic for Applications. Microsoft Visual Basic for Applications je „odľahčená“ verzia programovacieho jazyka Microsoft Visual Basic.
Čo je makro
Význam použitia makra spočíva v automatizovaní činností práce s Excelom. Dajme tomu, že potrebujeme denne zlúčiť niekoľko hárkov do jedného. Manuálne by takáto činnosť zabrala množstvo času a preto využijeme výhody makra.
Tipy na úlohy s využitím makier
- Tlač do PDF
- Automatická tvorba kontingenčnej tabuľky
- Automatická tvorba grafu
- Automatické formátovanie tabuľky
- Automatické zlučovanie hárkov do jedného
- Automatická duplikácia hárka
- Odstránenie duplicít v údajoch
- a ďalšie
Ak máte ďalšie tipy na zautomatizovanie prác v Exceli, napíšte prosím do komentárov :).
Ako sprístupniť makro
V Microsoft Excel si najprv zobrazíme kartu Vývojár (Developer) a to cez Súbor > Možnosti. V novom otvorenom okne Program Excel - možnosti vľavo zvolíme možnosť Prispôsobiť pás s nástrojmi a úplne vpravo začiarkneme Vývojár.
Karta Vývojár sa zvyčajne umiestni ako posledná karta medzi ostatnými.
Nahrávanie makra
V prípade zautomatizovania činnosti práce v MS Excel je najprv potrebné dané činnosti urobiť „manuálne“. Tie si uložíme prostredníctvom nahrávania makra.
Pod nahrávaním makra sa myslí záznam všetkých činností, ktoré urobíme v Microsoft Excel. Výsledné makro môžeme „prehrať“ spustením cez menu, klávesovou skratkou alebo kliknutím na tlačidlo. Napr. chceme, aby nami vytvorenú tabuľku Excel automaticky naformátoval (orámoval a vyfarbil.). Pre tento účel pripravíme makro, ktoré môžeme kedykoľvek spustIť napr. kliknutím na tlačidlo.
Prejdeme do karty Vývojár a zvolíme Zaznamenať makro.
Objaví sa nasledovné okno, ktoré vyplníme podľa vzoru:
Vložili sme názov makra (bez medzier a diakritiky!), klávesovú skratku (nie je povinné) a popis. Po potvrdení OK začína samotné nahrávanie činností používateľa, takže formátovať tabuľku.
Po dokončení makro zastavíme! Použijeme Zastaviť záznam v karte Vývojár.
Poznámka: Upravenú tabuľku môžeme vymazať (nie je už potrebná, pretože formátovanie máme vytvorené cez makro).
Spustenie makra
Makro môžeme spustiť nasledovne:
- priradenou klávesovou skratkou
- v karte Vývojár prostredníctvom tlačidla Makrá
- formulárovým tlačidlom, ku ktorému priradíme nahraté makro. O tejto možnosti si povieme bližšie.
Spustenie makra cez tlačidlo
V karte Vývojár zvolíme tlačidlo Vložiť a vyberieme Tlačidlo, tak ako na obrázku:
Po vložení tlačidla kdekoľvek do tabuľky máme na výber z nahratých makier, tak ako na obrázku:
Vložené tlačidlo môžeme premenovať cez kontextové menu (t.j. pravým tlačidlom) zvolením možnosti Upraviť text.
Kedykoľvek, po kliknutí na tlačidlo sa vždy vykoná priradené makro.
Makro, ktoré sme nahrali je v Exceli reprezentované vo forme programu v Microsoft Excel VBA. Ak sme zvedaví, ako daný kód vyzerá, potom musíme prejsť do karty Vývojár a zvolíme Visual Basic.
Otvorí sa nám okno s názvom Microsoft Visual Basic for Applications. Naľavo hore pod menu a tlačidlami si všimnime Project - VBA Project. Jedná sa o Project Explorer, ktorý obsahuje zoznam objektov, modulov a tried. Náš kód by sme mali nájsť v Module1 a sprístupnime ho 2x kliknutím.
Jedná sa o tzv. subroutine (podprogram). Môžeme sa stretnúť aj s function (funkcia).
Sub = Subroutine = podprogram. Obsahuje príkazy Microsoft VBA, ktoré v Exceli vykonajú konkrétnu činnosť (napr. vymazanie oblasti buniek, zlúčenie, tvorba grafu, kontingenčnej tabuľky, ...). Subroutine nevracia do bunky žiadnu hodnotu.
Function = funkcia. . Obsahuje príkazy Microsoft VBA, ktoré využijeme napr. k vytvoreniu vlastnej funkcie (napr. obvod obdĺžnika, vnútorný obvod rúry a podobne). Function vráti vypočítanú hodnotu.
Ukladanie makra
Narozdiel od starších verzií Microsoft Excel musíme súbor s makrom uložiť pod špeciálnym formátom a to: Zošit programu Microsoft Excel podporujúci makrá
Ikonka súboru vyzerá nasledovne (súbor má príponu .xlsm):
Povolenie makra
Kvôli bezpečnosti je implicitne povolenie makier zakázané (v minulosti sa prostredníctvom makier spúšťali vírusy). Používateľ musí po otvorení súboru makro daného súboru povoliť kliknutím na Povoliť obsah.
To ako bude Excel pristupovať k súborom obsahujúce makro závisí od globálneho nastavenia Zabezpečenie makra v karte Vývojár.
Máme na výber nasledovné možnosti:
Zakázať všetky makrá bez oznámenia – zakáže všetky makrá, notifikácia sa nezobrazí
Zakázať všetky makrá s oznámením – zakáže všetky makrá, notifikácia sa zobrazí
Zakázať všetky makrá okrem digitálne podpísaných makier – zakáže všetky makrá okrem digitálne podpísaných
Povoliť všetky makrá (neodporúča sa - môže sa spustiť potencionálne nebezpečný kód) – povolí všetky makrá (neodporúča sa; potencionálne sa môže spustiť nebezpečný kód)
Implicitne je nastavená možnosť: Zakázať všetky makrá s oznámením, tú aj ponecháme.