Makra a VBA

Transkript

Makra a VBA
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
Čtvrtek 3. listopadu
Makra v Excelu
Obecná definice makra:
Podle definice je makro strukturovanou definicí jedné nebo několika akcí, které chceme, aby MS
Excel vykonal jako odezvu na nějakou námi definovanou událost.
Spouštění makra:
 pomocí ikony
na kartě Vývojář a spuštěním makra
 pomocí klávesové zkratky nastavené při tvorbě makra
 pomocí ikony na panelu nástrojů nebo příkazy v menu (individuálně nastavenými)
 pomocí vloženého tlačítka v listu
Druhy maker, způsoby tvorby a jejich ukládání
A. Druhy maker podle umístění
Při vytváření maker je velmi důležité znát, kam svá makra ukládáme, a to z následujících důvodů:

pokud je chceme používat, musíme je mít v našem Excelu otevřená;

abychom mohli makra přenášet na jiný počítač, zálohovat je a dělat v nich další možné úpravy.
1. Makra v osobním sešitu maker
Pokud pracujeme stále na stejném počítači, většinou si makra ukládáme do tzv. Osobního sešitu maker. To
je soubor personal.xlsb, který je vytvořen po uložení prvního makra do osobního sešitu maker (vytvoří se
v umístění C:\Documents and Settings\uživatelxxx\Data aplikací\Microsoft\Excel\XLStart). Nevýhodou tedy
je, že makra, která si sem zaznamenáme, jsou dostupná pouze na tom počítači, kde jsme je vytvořili a pod
stejným přihlášením uživatele.
Tento soubor se vytváří automaticky, pokud vytvoříme jakékoliv makro v osobním sešitu maker, a je k
dispozici vždy, je-li spuštěný MS Excel. Otevírá se totiž automaticky po zapnutí Excelu jako skrytý.
V případě, že uvedený soubor smažeme, odstraníme tím z programu Excel všechna makra uložená do
osobního sešitu maker.
(Uvedená složka XLStart má ještě druhý význam – soubory v ní umístěné se automaticky spouštějí při startu
Excelu.)
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
2. Makra v aktuálním souboru
Jsou to všechna makra, která máme v právě otevřeném souboru. Budou přístupná jen tehdy, je-li uvedený
soubor otevřen. V opačném případě nebudou k dispozici. Sešity obsahující makra je nutné do speciálního
sešitu s příponou xlsm.
3. Makra v novém sešitu maker
Je to obdoba předchozího. Tento způsob se používá tehdy, pokud chceme makra přenášet na jiný počítač a
nechceme je plést s makry v osobním sešitu maker (např. z důvodů pořízení dalších maker). Potom je vhodné
je mít v samostatném souboru.
Dalším důvodem může být, že s makry pracujeme jen občas a nechceme je mít trvale přístupná. Současně
nepatří k jednomu konkrétnímu souboru, ve kterém by jinak mohla být (například makra pracující s několika
soubory).
B. Druhy maker podle způsobu vytváření
1.
Makra záznamová
Tato makra jsou vytvořena v tzv. záznamu, to znamená nahráním posloupností příkazů, které provedeme v
režimu nahrávání makra.
2.
Makra přímo napsaná v programovacím jazyku VBA
Tato makra jsou napsaná pomocí editoru jazyka Visual Basic for Application, který je součástí
programu MS Excel. Tento způsob tvorby maker je v podstatě již programováním a jsou nutné
znalosti uvedeného programovacího jazyka. Můžeme tak například vytvořit makra s vyhledávacími
podmínkami a cykly, se zobrazovanými dialogovými okny apod.
Ikona
otevře editor VBA. Z nabídky Insert vybereme položku Module
Modul můžeme vložit také pomocí pravého tlačítka
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
3.
Makra psaná přímo kombinací záznamu a úpravami ve VBA
Tento způsob je vhodný pro začátečníky, kteří se učí orientovat v základních příkazech VBA.
Vytvoříme v záznamu makro a potom jej upravujeme v editoru.
Příklady:
1. Makro orámuje oblast, která má alespoň dva sloupce a dva řádky tak, že vnitřní čáry budou
tenké a vnější tlusté a tabulku vyplní modře
a. označit oblast, kterou chci upravit
b. spustit nahrávání
c. pojmenovat makro popř. zvolit klávesovou zkratku
d. provést příslušné orámování a výplň
e. zastavit záznam
2. Makro zapíše do buněk pod sebou postupně prodlužující se řetěz z hvězdiček „*“
a. zadat příkaz
a vyplnit dialog
b. zvolit příkaz
c. vyplnit první buňku hvězdičkou a pokračovat dolů
d. zastavit záznam
Nahraný zápis makra
Nyní upravíme v editoru zdrojový kód tak, abychom mohli zadat kolik řádků hvězdiček chceme
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
Čtvrtek 10. listopadu
Makra pro práci s listy
Př. 1 Makro vypíše do dialogového okna listy aktivního sešitu, a to i listy skryté
Př. 2 Makro přidá do sešitu požadovaný počet listů
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
Př. 3 Makro skryje všechny listy kromě prvního
Př. 4 Makro skryje důkladně všechny listy kromě prvního. Takhle skryté listy nelze zobrazit pomocí
nástrojů v Excelu. Zobrazíme je jen pomocí prostředků VBA
Př. 5
Funkce
 Každá funkce musí začínat klíčovým slovem Function a končit End Function.
 Funkce se musí nějak jmenovat a její název nesmí obsahovat nedovolené znaky, jako je
mezera, tečka vykřičník apod. Je lepší nepoužívat ani znaky s diakritikou. Jméno funkce
musí začínat písmenem.
 Za názvem funkce v závorce následuje parametr, může jich být více (oddělují se čárkou)
 Parametry slouží k zadávání vstupních hodnot, každý parametr je nutné pojmenovat a lze i
určit jeho datový typ
 Funkce nemusí mít žádný parametr
 Výsledkem funkce je vypočtená hodnota a také pro ni můžeme specifikovat jakého bude
typu
 Uvnitř funkce se vypočte a funkci přiřadí návratová hodnota, přiřazení se provede znakem =
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
 Funkci můžeme použít v tabulce stejným způsobem jako vestavěné funkce. V průvodci
funkcí je nová funkce v kategorii Vlastní
Př. 1 Funkce převede údaj o rychlosti v metrech za sekundu na údaj v kilometrech za hodinu
Př. 2 Funkce převede časový údaj na sekundy
Př. 3 Funkce spojí dva textové řetězce do jednoho a přidá mezi ně mezeru
Př. 4 Funkce podle rodného čísla rozliší, jde-li o muže nebo ženu
Funkce Trim odstraní ze začátku a z konce řetězce mezery
Funkce Mid vybere ze zadaného řetězce od zadané pozice určený počet znaků. Mid (řetězec,
pozice, počet znaků). Při vynechání třetího parametru vrátí funkce zbytek řetězce od zadané pozice
Zpracováno podle knihy Lenky Forstové VBA Excel v příkladech
Př. 5 Funkce z rodného čísla vypočítá datum narození

Podobné dokumenty

Komprimovaný soubor prog

Komprimovaný soubor prog Font soubor otevřeného typu (Adobe a Microsoft)/Šablona matematického výrazu otevřeného souborového fomátu OpenDocument (ODF)

Více

Vytvoření makra pomocí záznamu

Vytvoření makra pomocí záznamu Spustit záznam makra viz pokyny výše uvedené (kromě názvu makra nadefinovat také klávesovou zkratku – do pole Klávesová zkratka vepsat písmeno k). Provést úkony, které mají být do makra zaznamenány...

Více

MYSTIC MONEY DIAMOND LINE MAX POWER 1

MYSTIC MONEY DIAMOND LINE MAX POWER 1 válcích viditelné pro hráče, tak je možné, jakmile se zastaví všechny zbývající válce, obdržet výhru na kterékoliv z 81 výherních linií. Symbol 81 je zároveň symbol divoký pro všechny sázky. Nahraz...

Více

5 ÚVOD DO SPSS

5 ÚVOD DO SPSS různé typy chybějících údajů a nabízí širokou škálu v oblasti transformací dat, včetně možnosti agregovat údaje. Jednoduše lze zadávat výpočty pro podskupiny dat. Nabídkový režim je plně přizpůsobe...

Více

Uncertainty Analysis

Uncertainty Analysis zajišťují funkce spojené s ovládacími tlačítky karty Uncertainty Analysis. Aby tak aplikace zůstala plně funkční, musí být sešit uložen s povolenými makry (s příponou XLSM). Pozn.: Pokud bude sešit...

Více

PRAVIDLA SOUTĚŽE Playboy Play it Wild – divoký zážitek

PRAVIDLA SOUTĚŽE Playboy Play it Wild – divoký zážitek po  vyplnění  všech  údajů  ve  vstupním  registračním  formuláři.  Každý  účastník  se  může   do  soutěže  registrovat  pouze  jednou.     Účastník  vyplnění...

Více

Politika cookies - Plus pro Vás od Nestlé

Politika cookies - Plus pro Vás od Nestlé Funkční cookies jsou pro vylepšení funkcionality webových stránek. Např. cookies, které si pamatují obsah, který jste navštívili na stránkách nebo emailová adresa a heslo, které jste uvedli při pře...

Více

IVT přehled (2005)

IVT přehled (2005) 18. Základy práce s textem............................................................................................................................. 31 Zásady.......................................

Více