MS Excel makra a VBA

Podobné dokumenty
8 Makra Příklad 4 Excel 2007

Čtvrtek 3. listopadu. Makra v Excelu. Obecná definice makra: Spouštění makra: Druhy maker, způsoby tvorby a jejich ukládání

Informační a komunikační technologie pro učební obory ME4 a SE4. Makra

Gymnázium a Střední odborná škola, Rokycany, Mládežníků 1115

5a. Makra Visual Basic pro Microsoft Escel. Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Kalina

4a. Makra Visual Basic pro Microsoft Excel Cyklické odkazy a iterace Makra funkce a metody

Excel - databáze. Opakování. Soubor, který jsme upravovali. Upravený soubor. Hrubá mzda = počet kusů * Kč za kus B6=B4*B5

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

v Excelu záznam, úprava a programování maker Programování Marek Laurenčík

DUM 06 téma: Tvorba makra pomocí VBA

Ukazka knihy z internetoveho knihkupectvi

Ukazka knihy z internetoveho knihkupectvi

Registrační číslo projektu: CZ.1.07/1.5.00/ Název projektu: Moderní škola 21. století. Zařazení materiálu: Ověření materiálu ve výuce:

Programování. záznam, úprava a programování maker

Test z programování v jazyce VBA v rámci předmětu Počítače II Vzorová zadání a vypracování

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Visual Basic for Application

Programování v Excelu 2007 a 2010 záznam, úprava a programování maker

ZÁKLADY PROGRAMOVÁNÍ & ALGORITMIZACE VE VBA

Makro. PDF vytvořeno zkušební verzí pdffactory Pro

v Excelu záznam, úprava a programování maker Programování Marek Laurenčík

Registrační číslo projektu: CZ.1.07/1.5.00/ Elektronická podpora zkvalitnění výuky CZ.1.07 Vzděláním pro konkurenceschopnost

Programování v Excelu 2007 a 2010 záznam, úprava a programování maker

3 Makra Příklad 4 Access Ve vytvořené databázi potřebuje sekretářka společnosti Naše zahrada zautomatizovat některé úkony pomocí maker.

Obsah Úvodem... 5 Co je to vlastně formulář... 6 Co je to šablona... 6 Jak se šablona uloží... 6 Jak souvisí formulář se šablonou...

Obsah. Obsah. Úvod Makra v Excelu Nahrávání maker První setkání s editorem jazyka Visual Basic... 31

Spuštění a ukončení databázové aplikace Access

3MA481 Propojení Accessu a Excelu David Hach

Nápověda aplikace Patron-Pro

Ukázka knihy z internetového knihkupectví

Obsah. Obsah. Úvod Makra v Excelu Nahrávání maker První setkání s editorem jazyka Visual Basic... 31

Gymnázium Vysoké Mýto nám. Vaňorného 163, Vysoké Mýto

Skripta ke školení. Základy VBA. vypracoval: Tomáš Herout. tel:

Kontingenční tabulky v MS Excel 2010

ZŠ ÚnO, Bratří Čapků 1332

Pracovní sešit MS Word pokročilý

MS Excel Základy maker. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

Obsah. Několik slov o Excelu 2007 a Operace při otvírání a ukládání sešitu 15. Operace s okny 27. Kapitola 1

Vytvoření nebo odstranění makra Excel

Vytvořil Institut biostatistiky a analýz, Masarykova univerzita J. Jarkovský, L. Dušek, M. Cvanová. 5. Statistica

01. HODINA. 1.1 Spuštění programu VB Prvky integrovaného vývojového prostředí. - pomocí ikony, z menu Start.

Access. Tabulky. Vytvoření tabulky

9 Úprava maker Příklad 4 Word 2007/ VBA

Zá kládní nástávení prostr edí operáč ní ho syste mu Windows 7 á vybrány čh áplikáčí

Makra. Orámování oblasti

Tlačítka a další prvky vestavěných panelů nástrojů a nabídek (CommandBar) a jejich Control ID ve verzi Excel 2010

1 Tabulky Příklad 3 Access 2010

Obsah. Úvod 15. Úvod do Excelu Práce se sešity 35

Prozkoumání příkazů na pásu karet Každá karta na pásu karet obsahuje skupiny a každá skupina obsahuje sadu souvisejících příkazů.

OBSAH Úvod do VBA... 6 K čemu VBA... 6 Když VBA nestačí... 6 Historie Visual Basicu... 7 Objektový model, vlastnosti, metody, události a funkce...

JAK PROPOJIT R-KO a EXCEL aneb Aby se uživatel nasytil a statistik zůstal celý

Předmluva 11 Typografická konvence použitá v knize Úvod do Excelu

Vzorce. Suma. Tvorba vzorce napsáním. Tvorba vzorců průvodcem

v Excelu záznam, úprava a programování maker Programování Marek Laurenčík

Makra lze ukládat v dokumentech nebo šablonách podporující makro příkazy. Obecně jsou tyto příkazy uloženy v části soubory s nazvané VBA projekt.

Slíbená princezna. Univerzální ComboBox

Microsoft Word základní

Microsoft Access tvorba databáze jednoduše

10 Algoritmizace Příklad 2 Word 2007/ VBA

Příloha 6. Palety nástrojů

Studijní skupiny. 1. Spuštění modulu Studijní skupiny

Pracovní prostředí Word 2003 versus Word 2010

POKROČILÉ ZPRACOVÁNÍ TEXTU

Ukázka knihy z internetového knihkupectví

Supernova 16 Ovládací zkratky. Akce Funkce Stolní počítač Přenosný počítač Automatické popisování grafických objektů LEVÝ CONTROL + PRAVÁ HRANATÁ

Reliance 3 design OBSAH

UŽIVATELSKÁ PŘÍRUČKA

Data x Informace x Znalosti

Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky. PORTÁL KUDY KAM. Manuál pro editaci ŽS. Verze 1.

Čím se liší MS OFFICE 2007 od předchozí verze

MS Excel Lekce 1. Operační program Vzdělávání pro konkurenceschopnost. Projekt Zvyšování IT gramotnosti zaměstnanců vybraných fakult MU

Přehledy pro Tabulky Hlavním smyslem této nové agendy je jednoduché řazení, filtrování a seskupování dle libovolných sloupců.

Pracovní prostředí Excel 2010

Grafy opakování a prohloubení Při sestrojování grafu označíme tabulku a na kartě Vložit klikneme na zvolený graf

Programujeme v softwaru Statistica - příklady

DATABÁZE A SYSTÉMY PRO UCHOVÁNÍ DAT 61 DATABÁZE - ACCESS. (příprava k vykonání testu ECDL Modul 5 Databáze a systémy pro zpracování dat)

Úvod. Program ZK EANPRINT. Základní vlastnosti programu. Co program vyžaduje. Určení programu. Jak program spustit. Uživatelská dokumentace programu

Obsahy kurzů MS Office

ČÍM SE LIŠÍ MS OFFICE 2007 OD PŘEDCHOZÍ VERZE SEZNAM OBRÁZKŮ OBSAH CITOVANÁ LITERATURA SEZNAM TABULEK. Základní ovládací prvky nové verze MS Office

DUM 07 téma: Proměnné, konstanty a pohyb po buňkách ve VBA

Zdokonalování gramotnosti v oblasti ICT. Kurz MS Excel kurz 1. Inovace a modernizace studijních oborů FSpS (IMPACT) CZ.1.07/2.2.00/28.

Programujeme v softwaru Statistica

Excel 2007 praktická práce

UniLog-D. v1.01 návod k obsluze software. Strana 1

ERP informační systém

EXCELentní tipy a triky pro mírně pokročilé. Martina Litschmannová

z aplikace Access 2003

Uživatelský manuál aplikace. Dental MAXweb

Vzorce. StatSoft. Vzorce. Kde všude se dá zadat vzorec

Microsoft. Word. Šablony. Mgr. Jan Veverka Střední odborná škola sociální Evangelická akademie

MONITORING OBCHODNÍCH PARTNERŮ

02. HODINA. 2.1 Typy souborů a objektů. 2.2 Ovládací prvky Label a TextBox

Úvodní příručka. Získání nápovědy Kliknutím na otazník přejděte na obsah nápovědy.

František Hudek. červenec 2012

Prohlížení a editace externích předmětů

Typy souborů ve STATISTICA. Tento článek poslouží jako přehled hlavních typů souborů v programu

Obsah KAPITOLA 1 Několik slov o Wordu

Č í sla slovy 1.3. verze dokumentu: vytvořil: Ing. Pavel Randák předmět: Uživatelský manuál vydavatel: Austro-Bohemia, s.r.o.

KOMPLEXNÍ VZDĚLÁVÁNÍ KATEDRA STROJNÍ SPŠSE a VOŠ LIBEREC

Registr práv a povinností

Transkript:

Autor: RNDr.

Obsah: MS Excel makra a VBA 1 Využití, ukázky, výhody a nevýhody... 2 2 Makra a zabezpečení... 2 2.1 Nastavení zabezpečení Excelu... 2 2.2 Uložení maker do sešitu a osobního sešitu maker... 3 3 Vytvoření jednoduchého makra záznamníkem maker a spuštění... 3 3.1 Relativní a absolutní odkazy... 4 3.2 Spouštění maker... 4 4 Úprava makra a prostředí editoru VBA... 4 4.1 Okno projektu a okno kódu... 6 4.2 Další okna... 6 4.3 Ukončení makra s chybou... 6 5 Programátorská pravidla pro makra a VBA... Chyba! Záložka není definována. 5.1 Konstanty... Chyba! Záložka není definována. 5.2 Proměnné... Chyba! Záložka není definována. 5.3 Datové typy... Chyba! Záložka není definována. 5.4 Pole... Chyba! Záložka není definována. 5.5 Podmínky If, Then, ElseIf, Else... Chyba! Záložka není definována. 5.6 Cykly, posloupnosti a opakování... Chyba! Záložka není definována. 5.7 Více možností Select Case... Chyba! Záložka není definována. 5.8 Výstup MsgBox... Chyba! Záložka není definována. 5.9 Vstup InputBox... Chyba! Záložka není definována. 5.10 MsgBox - okna s tlačítky... Chyba! Záložka není definována. 5.11 Konstanty pro určení reakce uživatele... Chyba! Záložka není definována. 5.12 Monitorování reakce uživatele stisk kláves... Chyba! Záložka není definována. 6 Ukázka konkrétních praktických maker... Chyba! Záložka není definována. 6.1 Nastavení formátu textu a čísel... Chyba! Záložka není definována. 6.2 Seznam listů... Chyba! Záložka není definována. 6.3 Sehrání hodnot z předem neznámého počtu listů... Chyba! Záložka není definována. 6.4 Vložení funkce pomocí makra... Chyba! Záložka není definována. 6.5 Přidání listu s kontrolou a dotazem... Chyba! Záložka není definována. 6.6 Výpis posledního času změny listu - událost listu... Chyba! Záložka není definována. 6.7 Výpis posledního času změny listu - událost listu... Chyba! Záložka není definována. 6.8 Dotaz a využití odpovědi... Chyba! Záložka není definována. 6.9 Dialogy a tlačítka... Chyba! Záložka není definována. 6.10 Formuláře... Chyba! Záložka není definována. 6.11 Projekt - sehrání dat z více listů, volání dílčích procedur... Chyba! Záložka není definována. 1

1 Využití, ukázky, výhody a nevýhody Programování maker se učíme proto, abychom uměli automatizovat často se opakující (i poměrně složité) činnosti. Abychom se to naučili, musíme rozumět kódu, který vytváří záznamník maker a musíme ho také umět upravit, abychom konkrétní zaznamenanou činnost uměli zobecnit. Pokud máme např. každý měsíc zpracovávat 10 tabulek z každé pobočky, je rozumné tuto činnost automatizovat pomocí makra. Výhody: automatizované opakování činností pomocí makra lze zajistit, co v Excelu přímo nejde nebo pouze složitě jednoduché spouštění pomocí klávesových zkratek Nevýhody: problémy se zabezpečením nelze jednoduše nastavit, protože to je věcí uživatele, nikoliv makra umístění makra je vázané na místo uložení, může být pouze v sešitu nebo v osobním sešitu maker (pomocí maker a VBA tedy nelze vytvořit samostatný spustitelný program) akci, provedenou makrem, nelze vrátit zpět Prostředí pro tvorbu maker se neliší již od verzí 2002/2003. Pozor makra nejsou plně kompatibilní mezi jednotlivými verzemi MS Excel a to bohužel ani do novějších, ani do starších verzí. Vše je nutné řádně vyzkoušet a otestovat. 2 Makra a zabezpečení 2.1 Nastavení zabezpečení Excelu Centrum zabezpečení Nastavení maker 2

2.2 Uložení maker do sešitu a osobního sešitu maker Makro může být uložené v běžném sešitu nebo v tzv. osobním sešitu maker. Makro v běžném sešitu: sešit se musí uložit ve formátu Sešit aplikace Excel s podporou maker typ XLSM před použitím makra se musí tento sešit otevřít. Většinou se použije makro v tomto aktuálním sešitu, lze ale také otevřít sešit s makrem a použít ho v jiném, také otevřeném sešitu Makro v osobním sešitu maker: lze ho do něj uložit při vytváření makra makro je potom vázané k počítači a lze ho tedy použít v libovolném otevřeném sešitu, musí ale být zároveň otevřen personal.xlsb, což může být problém. pro úpravu takto uloženého makra se musí zobrazit skrytý sešit Personal: karta Zobrazení Zobrazit, vybrat PERSONAL.XLSB. Pro spouštění makra nemusí být tento osobní sešit zobrazený trvale, stačí pouze poprvé nutno vyzkoušet soubor PERSONAL.XLSB se nachází v uživatelském adresáři/data aplikací/microsoft/excel/xlstart (Win 7 + MS Office 2010) 3 Vytvoření jednoduchého makra záznamníkem maker a spuštění Zobrazení karty Vývojář (Soubor Možnosti aplikace Přizpůsobit pás karet) Před spuštěním záznamníku maker je vhodné: raději vždy vybrat jako výchozí buňku např. A1 rozmyslet si posloupnost činností vybrat vhodnou a neobsazenou klávesovou kombinaci pro spouštění (CTRL+klávesa, popř. CTRL+SHIFT+klávesa) Postup: 1. karta Vývojář Záznam makra 2. zadat vhodný název (bez mezer, kromě písmen a čísel používat podtržítka, raději bez diakritiky v případě chybného názvu Excel upozorní), např. FormatMena 3. zadat zkratku pro spouštění, umístění a popřípadě popis 4. po potvrzení se spustí záznamník, zaznamenávají se činnosti (kromě např. výběru nabídek) 5. nakonec vybrat opět výchozí buňku (A1) a karta Vývojář Zastavit záznam Po vytvoření makra záznamníkem je často nutné ho ještě upravit (karta Vývojář Makra Upravit). Obr. karta Vývojář 3

Př.: Makro pro nastavení formátu písma v oblasti (tučné, kurzíva): Sub Makro1() Range("B2:B13").Select Selection.Font.Bold = True Range("A1").Select End Sub Takto vytvořené makro funguje pouze pro oblast B2:B13. Po odstranění řádku Range("B2:B13").Select je makro funkční pro jakýkoliv výběr (předem vybrat oblast).pravdou je, že v tomto případě mohou být odstraněny oba řádky Range a není tedy nutné vybírat buňku A1 na začátku a na konci. 3.1 Relativní a absolutní odkazy Makra se vytvářejí pro konkrétní oblast v sešitu. Mohou nastat situace: v sešitu se přidají/odstraní řádky/sloupce: makro bude fungovat špatně vzhledem k tomu, že obsahuje adresy buněk, které se automaticky nezmění nutná oprava operaci máme provést pro více oblastí (např. sloupce): lze vytvořit makro pro každý sloupec nebo jediné makro, které bude používat relativní odkazy (karta Vývojář Použít relativní odkazy) Př.: Makra pro nastavení formátu písma v oblasti (tučné, kurzíva) úprava pro obdélníkovou oblast (jedno s absolutní adresací, druhé s relativní) 3.2 Spouštění maker Nelze spouštět makra samostatně, jako programy, ale pouze se sešitem nebo s Excelem. Makra, uložená v sešitu, lze spouštět z tohoto sešitu musí být samozřejmě otevřený. Makra, uložená v osobním sešitu maker, lze např. klávesovou zkratkou pouštět na příslušném počítači pouze po jeho otevření (personal.xlsb je skrytý soubor). Možnosti spouštění: Karta Vývojář Makra Spustit Pomocí zadané klávesové zkratky Přiřazením jako akce na formulářové tlačítko Další možnosti: z prostředí editoru VBA, automaticky jako událost sešitu, 4 Úprava makra a prostředí editoru VBA Většinu maker, které vytvoříme záznamníkem maker, je nutné dále upravit. Zároveň lze přímo vytvářet nová makra nebo např. funkce. Toto vše se provádí v klasickém prostředí editoru VBA. Možnosti otevření editoru: Vývojář Makra, vybrat a Upravit Vývojář Visual Basic (pokud je makro např. událostí listu, nelze použít první postup) ALT + F11 Pokud je makro vytvořené záznamníkem, je součástí tzv. modulu v objektovém modelu. Tyto moduly je možné i ručně vytvářet (nabídka Insert Module). Pokud je ale makro např. událostí listu, je umístěno jinde ve stromě v části příslušného listu. 4

Menu a panely nástrojů Okno projektu Kód makra Object browser (objekty) Vlastnosti (Properties) Ladící okno (Immediate) Okno proměnných (Locals) Okno kukátka (Watches) Obr. prostředí editoru VBA Poznámky: pro běžnou práci s makry postačují výchozí okna Project a Code okna se zobrazují / skrývají pomocí nabídek menu View Vzhled: panely ve volbě View vhodné: Project Explorer, Properties Window Pozor na přepínání režimu Design Edit (tlačítko Design mode) 5

4.1 Okno projektu a okno kódu Obr. Okno projektu a okno kódu Okno projektu obsahuje seznam všech objektu, které jsou v daném projektu k dispozici: objekty (objects) - Listy,Grafy - která obsahuje listy či grafy a kódy pro tyto listy Formuláře (Forms) - UserForm - obsahuje Formulář a kódy pro tento formulář Moduly (Modules) - obsahuje kódy do kterých se například zaznamenávájí vlastní funkce, či procedury společné pro celý projekt Class Modules V okně kódu se zobrazuje samotný kód makra. 4.2 Panely (Toolbars) Standardně se zobrazuje pouze lišta Standard. Pro úpravu kódu se hodí také lišta Edit. Zobrazení se nastavuje v prostředí VBA: View Toolbars Edit Využití: List Properties, List Constants, Quick Info Rychlá změna části kodu na komentář: vybrat řádky, potom Comment Block (Uncomment Block). 4.3 Další okna Okno vlastnosti - zjistíte jaké a jak nastavené vlastnosti má konkrétní objekt Ladicí okno (Immediate) - velice důležité při odlaďování maker a VBA aplikací. Lze do něj zapisovat např. proměnné pro otestování jejich hodnot: Debug.Print var_a Druhou možností je zobrazení proměnné do Msgbox: MsgBox var_a Object browser přehled prvků s nápovědou Okno Formuláře a okno s ovládacími prvky zde se vytvářejí formuláře. 4.4 Ukončení makra s chybou Pokud makro obsahuje chybu, tak skončí, vypíše chybu a nabídne otevření editoru (tlačítko Debug) se zvýrazněním chyby. Tlačítko End makro ukončí hned. 6

V editoru lze zobrazit další okna (Immediate, Locals) pro ladění makra vhodné hlavně při výskytu chyby: Locals zobrazuje stav proměnných Immediate k zastavenému makru lze zadávat příkazy (vhodné je využití MsgBox) Pro zastavení makra lze použít tlačítko Reset. 7