Na čo sú dobré makrá v Exceli??

Na veľmi jednoduchom príklade ukážem použitie makra v programe Excel..

Písmo: A- | A+
Diskusia  (18)

Predstavte si, že máte vytvoriť na každý týždeň v roku jednu tabuľku. Každá tabuľka bude na novom hárku. Každý hárok bude obsahovať vo svojom názve týždeň, pre ktorý obsahuje údaje. Celkovo budeme mať teda 52 hárkov. Výsledok by mohol vyzerať takto (hotový príklad si môžete stiahnuť tu):

Obrázok blogu

 
Isto uznáte, že robiť to ručne je dosť náročné. Musíme 52 krát vytvoriť nový hárok a potom ho premenovať.
Na takéto operácie slúžia makrá. Sú to programy, ktoré automaticky vykonávajú rôzne činnosti v Exceli. Napríklad také, ktoré sa často opakujú.

SkryťVypnúť reklamu
SkryťVypnúť reklamu
Článok pokračuje pod video reklamou

Teraz ukážem zopár krokov, ako vytvoriť makro na uvedenú úlohu. Vytvorenie 52 hárkov a ich pomenovanie podľa týždňa vám zaberie maximálne 5 minút (vytvorenie 52 hárkov ručne som neskúšal). Príklad je vytvorený v programe Microsoft Office Excel 2007:

Vytvoríme si nový súbor Excel s názvom "Makra"

1) Klikneme na lištu vývojár:

Obrázok blogu


2) Klikneme na tlačidlo "Makrá":

Obrázok blogu

3) Vytvoríme makro: nazveme ho "Harky" a stlačíme tlačidlo "Vytvoriť"

Obrázok blogu

4) Po stlačení tlačidla "Vytvoriť" sa automaticky otvorí okno na písanie kódu. Zatial sa zobrazuje iba prázdna procedúra makra "Harky":

Obrázok blogu

5) Vložíme tento kód použitím (CTRL-C ->CTrl-V, kód vysvetlím neskôr):

SkryťVypnúť reklamu


Dim i As Integer

For i = 1 To 52
Worksheets.Add After:=Worksheets(Worksheets.Count)
Worksheets(Worksheets.Count).Name = "tyzden" & i

Next i

Kód bude potom vyzerať takto:

Obrázok blogu

6) Spustíme makro:

Obrázok blogu

7) Ak Excel nezobrazí chybu, po návrate do Excelu vidíme výsledok:

Obrázok blogu

=============================================================================


Cieľom tohto článku je ukázať, na čo môže byť dobré makro v Exceli, pre tých, čo sa s tým ešte nestretli. Takže tu by článok končil.
Pre doplňenie však vysvetlím aj uvedený kód. Ďaľšia časť bude preto trochu komplikovanejšia.


Vysvetlenie kódu

Dim i As Integer - deklarácia premennej. Premennú používame na zapamätanie si nejakej hodnoty. V tomto prípade je to celé číslo, teda deklarujeme premennú s menom i, typu integer (cele číslo)

For i = 1 To 52 - pre každý krok (hodnotu premenej i od 1 do 52) vykoná príkazy medzi týmto riadkom a príkazom Next

SkryťVypnúť reklamu


Worksheets.Add After:=Worksheets(Worksheets.Count) - príkaz Worksheet.Add pridá zošit. After znamená, že bude zošit pridaný za zošit definovaný za znakom ":=". Príkaz Worksheet.Count vracia počet existujúcich hárkov, a je použitý ako poradové číslo (index) hárku, ktorý sa má premenovať. Príkaz Worksheets(Worksheets.Count) nám teda vyberie posledný pridaný hárok (sheet).


Worksheets(Worksheets.Count).Name = "tyzden" & i - príkaz Worksheets(Worksheets.Count).Name nám definuje meno posledného hárku. Ako meno priradíme text "tyzden" ku ktorému operátorom & pridáme číslo týždňa uloženého v premennej i

Next i - zvyšuje krok cyklu For, to znamená, že zvýši hodnotu premennej i o jedna a vráti program späť na príkaz For.

SkryťVypnúť reklamu

--------------------------------------------------------------------------------------------------------

Viac napríklad tu.


Na vytvorenie príkladu bol použitý Microsoft Office Excel 2007 - slovenská verzia

Hotový príklad si môžete stiahnuť tu.

Obrázok v perexe: Felipe Arte (Flickr)

Lubo Kužela

Lubo Kužela

Bloger 
  • Počet článkov:  36
  •  | 
  • Páči sa:  1x

Moja stránka: lenacor.comV prípade záujmu pomôzem s Excelom.. Ak by ste mali zaujem o skolenie, alebo individuálne konzultácie kontaktujte ma prosím na lubomir.kuzela@gmail.com, predmet "Excel".makrá, kontingenčné tabuľky, grafy, reporty, import údajov, databázy, výpočty, prehľadávanie a analýza dát.. Pracujem ako projektový manažér v priemysle. Zaujímam sa o technológie a ekonómiu. Zoznam autorových rubrík:  InformatikaŠkolstvoEkonomikaPostrehyVedaSúkromnéNezaradenéDenník ítečkára :))

Prémioví blogeri

Věra Tepličková

Věra Tepličková

1,066 článkov
Yevhen Hessen

Yevhen Hessen

35 článkov
Karol Galek

Karol Galek

115 článkov
Adam Valček

Adam Valček

14 článkov
Martina Hilbertová

Martina Hilbertová

50 článkov
Juraj Hipš

Juraj Hipš

12 článkov
reklama
reklama
SkryťZatvoriť reklamu