Ako vytvoriť makro v Exceli

od autora: | 14. júla 2015

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.

 

ako vytvorit makro v exceli spristupnenie karty vyvojar

 

Karta Vývojár sa zvyčajne umiestni ako posledná karta medzi ostatnými.

 

ako vytvorit makro v exceli karta vyvojar

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.

ako vytvorit makro v exceli vyvojar zaznamenat makro

Objaví sa nasledovné okno, ktoré vyplníme podľa vzoru:

ako vytvorit makro v exceli zaznam makra 

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. 

ako vytvorit makro v exceli formatovanie bunky

 

Po dokončení makro zastavíme! Použijeme Zastaviť záznam v karte Vývojár.

ako vytvorit makro v exceli vyvojar zastavit zaznam

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á

 ako vytvorit makro v exceli tlacidlo makra

ako vytvorit makro v exceli spustit makro

  • 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:

ako vytvorit makro v exceli vkladanie tlacidla

Po vložení tlačidla kdekoľvek do tabuľky máme na výber z nahratých makier, tak ako na obrázku:

ako vytvorit makro v exceli priradit makro 

Vložené tlačidlo môžeme premenovať cez kontextové menu (t.j. pravým tlačidlom) zvolením možnosti Upraviť text.

ako vytvorit makro v exceli tlacidlo upravit 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.

ako vytvorit makro v exceli tlacidlo 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.

 

microsoft visual basic for applications

 

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á

ako vytvorit makro v exceli zosit podporujuci makra 

Ikonka súboru vyzerá nasledovne (súbor má príponu .xlsm):

ako vytvorit makro v exceli ikona vba 

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.

ako vytvorit makro v exceli povolit 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.

ako vytvorit makro v exceli zabezpecenie makra

Máme na výber nasledovné možnosti:

ako vytvorit makro v exceli nastavenie makra

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.

Celkové hodnotenie

Pridaj komentár

Vaša e-mailová adresa nebude zverejnená. Vyžadované polia sú označené *