Technické výpočty Ing. David Fojtík, Ph.D.  A922, kl. 4193 david.fojt i k @vsb.cz 352 - Katedra automatizační techniky a ř...
Automatizace práce  v MS Office
Makra  & Visual Basic for Application <ul><li>Makra jsou uživatelsky programovatelné nástroje umožňují automatizovat uživa...
Zahájení záznamu makra v MS Excelu <ul><li>Zahájení záznamu </li></ul><ul><ul><li>Záložka „ Zobrazení “, skupina „ Makro “...
Záznam makra <ul><li>Znamenávané činnosti </li></ul><ul><ul><li>Všechny činnost, které modifikují dokument </li></ul></ul>...
Soubory s makry <ul><li>Makro může být provedeno pouze když je otevřené jeho úložiště – soubor, doplněk, databáze, šablona...
Skvělé, Vyřeším tím ale všechno?
Problémy při záznamu maker  v MS Excelu <ul><li>Záznam makra nelze zahájit v režimu editace buňky </li></ul><ul><ul><li>To...
Jak tato omezení obejít… <ul><li>Odborným zásahem do zápisu makra  </li></ul><ul><ul><li>Makro je možné přímo prostřednict...
Editace maker <ul><li>Soubor s makrem musí být otevřen </li></ul><ul><li>Přes dialog Makra volbou Upravit </li></ul><ul><u...
Záložka Vývojář <ul><li>Zobrazení záložky </li></ul><ul><ul><li>Záložka „ Soubor “, nabídka „ Možnosti “  </li></ul></ul><...
Grafické ovládací prvky pro spouštění maker
Spouštění makra pomocí tlačítka <ul><li>Zaměření </li></ul><ul><ul><li>Vhodné pro makra úzce svázaná s konkrétním listem <...
Přizpůsobení pásu karet <ul><li>Zaměření </li></ul><ul><ul><li>Vhodné pro obecná makra použitelná v široké škále dokumentů...
Historie MS Office aneb trocha historie nikoho nezabije <ul><li>1982 tabulkový kalkulátor Multiplan, v prostředí MS-DOS pr...
Úvod k algoritmizaci
Algoritmus – řešení (technické) úlohy <ul><li>Má-li úloha řešení, vždy existuje postup, podle kterého lze řešení dosáhnout...
Vlastnosti algoritmů <ul><li>Každý algoritmus musí mít tyto vlastnosti:  </li></ul><ul><li>Determinovanost  (předurčenost,...
Metody zápisu algoritmů <ul><li>Stejně důležitý jako samotný algoritmu je i forma jeho zápisu. Zápis musí být jednoznačný,...
Příklady metod zápisu algoritmů <ul><li>Slovní zápis: </li></ul><ul><ul><li>Kuchařka </li></ul></ul><ul><ul><li>Návod na p...
Základní stavební prvky algoritmů <ul><li>Proměnné  – symbolicky pojmenované údaje, které se při zpracování nahradí konkré...
??? kontrolní otázky ??? <ul><li>Co je identifikátor? </li></ul><ul><li>Jaká pravidla platí pro tvorbu identifikátoru? </l...
Ing. David Fojtík, Ph.D.  A922, kl. 4193 david.fojt i k @vsb.cz 352 - Katedra automatizační techniky a řízení
Upcoming SlideShare
Loading in...5
×

Tv 05

3,284
-1

Published on

Published in: Education
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
3,284
On Slideshare
0
From Embeds
0
Number of Embeds
4
Actions
Shares
0
Downloads
0
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Tv 05

  1. 1. Technické výpočty Ing. David Fojtík, Ph.D. A922, kl. 4193 david.fojt i k @vsb.cz 352 - Katedra automatizační techniky a řízení
  2. 2. Automatizace práce v MS Office
  3. 3. Makra & Visual Basic for Application <ul><li>Makra jsou uživatelsky programovatelné nástroje umožňují automatizovat uživatelskou činnost </li></ul><ul><ul><li>Jsou zapsány v jazyce Visual Basic for Appliaction (VBA) </li></ul></ul><ul><ul><li>Uchovávají se v dokumentech aplikací. Existují speciální dokumenty, které zajišťují jejich trvalou dostupnost. </li></ul></ul><ul><ul><li>Pojem Makra se nejčastěji používají v souvislosti s Microsoft aplikacemi kde je VBA integrováno </li></ul></ul><ul><ul><li>VBA je součástí aplikací MS Office, MS MapPoint, MS Visio, AutoCAD, Invertor, WordPerfect, ArcGis, CorelDRAW </li></ul></ul><ul><li>Vyvolávání maker </li></ul><ul><ul><li>vyvoláním z nabídky – záložka Zobrazení, skupina Makra </li></ul></ul><ul><ul><li>stiskem klávesové zkratky (obvykle Ctrl + ?) </li></ul></ul><ul><ul><li>kliknutím na tlačítko v dokumentu </li></ul></ul><ul><ul><li>kliknutím na ikonu panelu/záložky </li></ul></ul><ul><li>Vytváření maker </li></ul><ul><ul><li>Záznamem činností uživatele – Záznam Makra </li></ul></ul><ul><ul><li>Programovým zápisem v jazyce MS Visual BAsic </li></ul></ul>
  4. 4. Zahájení záznamu makra v MS Excelu <ul><li>Zahájení záznamu </li></ul><ul><ul><li>Záložka „ Zobrazení “, skupina „ Makro “, rozbalení tlačítka „ Makra “, nabídka „ Záznam makra…“ </li></ul></ul><ul><ul><li>nebo </li></ul></ul><ul><ul><li>Záložka „ Vývojář “, skupina „ Kód “, tlačítko „ Záznam makra…“ </li></ul></ul><ul><ul><li>Záložku „Vývojář“ je nutné zobrazit v Možnostech aplikace </li></ul></ul><ul><li>Název makra - povinné </li></ul><ul><ul><li>Nesmí obsahovat mezery </li></ul></ul><ul><ul><li>Nesmí začínat číslicí </li></ul></ul><ul><ul><li>Nesmí být shodný s klíčovými slovy VBA </li></ul></ul><ul><ul><li>Nedoporučuje se česká diakritika </li></ul></ul><ul><li>Klávesová zkratka - nepovinné </li></ul><ul><ul><li>Buď se uvede písmeno Ctrl + Písmeno </li></ul></ul><ul><ul><li>Nebo se navíc podrží Shift Ctrl + Shift + Písmeno </li></ul></ul><ul><ul><li>Uložit makro do - povinné </li></ul></ul><ul><ul><li>Tento sešit – bude uloženo v aktivním sešitu </li></ul></ul><ul><ul><li>Osobní sešit maker – bude uloženo do skrytého sešitu personal.xlsm </li></ul></ul><ul><ul><li>Nový sešit – bude uloženo do nového sešitu </li></ul></ul>
  5. 5. Záznam makra <ul><li>Znamenávané činnosti </li></ul><ul><ul><li>Všechny činnost, které modifikují dokument </li></ul></ul><ul><ul><li>Všechny změny výběru objektů (buňka, soubor, list, graf atd.) </li></ul></ul><ul><ul><li>Všechny změny stavu dokumentu (uložení, tisk) </li></ul></ul><ul><ul><li>Změny konfigurace aplikace </li></ul></ul><ul><li>Nezaznamenávané činnosti </li></ul><ul><ul><li>Pohyb myši </li></ul></ul><ul><ul><li>Změna umístění a velikosti aplikace </li></ul></ul><ul><ul><li>Procházení nabídky </li></ul></ul><ul><li>Použít relativní adresy </li></ul><ul><ul><li>Zapnuto: Při změně výběru buňky se zaznamená její relativní umístění k předchozímu výběru – např. o dva sloupce vpravo a jeden řádek níže </li></ul></ul><ul><ul><li>Vypnuto: Při změně výběru buňky se zaznamená přesná adresa nově vybrané buňky – např. C2 </li></ul></ul><ul><ul><li>Makro, jenž má být aplikovatelné na uživatelem vybranou buňku, nesmí obsahovat operaci výběr u buňky – musí se vybrat před záznamem </li></ul></ul><ul><ul><li>Ukončení záznamu </li></ul></ul><ul><ul><li>Tlačítko na stavovém řádku </li></ul></ul><ul><ul><li>Položka Zastavit záznam pod nabídkou Makra </li></ul></ul>
  6. 6. Soubory s makry <ul><li>Makro může být provedeno pouze když je otevřené jeho úložiště – soubor, doplněk, databáze, šablona </li></ul><ul><li>Úložiště MS Excelu - typy souborů </li></ul><ul><ul><li>Běžné soubory: ve r ze 97- 200 3 xsl , verze 2007 -2010 xls m </li></ul></ul><ul><ul><li>Šablony: ve r ze 97- 200 3 xs t , verze 2007 -2010 xl tm </li></ul></ul><ul><ul><li>Doplňky </li></ul></ul><ul><li>Úložiště MS Wordu - typy souborů </li></ul><ul><ul><li>Běžné soubory: ve r ze 97- 200 3 doc , verze 2007 -2010 docm </li></ul></ul><ul><ul><li>Šablony: ve r ze 97- 200 3 dot , verze 2007 -2010 dotm </li></ul></ul><ul><ul><li>Doplňky </li></ul></ul><ul><li>Zabezpečení maker </li></ul><ul><ul><li>Makra mohou vykonávat potencionálně nebezpečné činnosti </li></ul></ul><ul><ul><li>Při prvním otevření souboru s makry je uživatel upozorněn na existenci maker. Nutné „povolit obsah“ </li></ul></ul><ul><ul><li>Změna chování je možná na kartě vývojář, položkou „Zabezpečení maker“ </li></ul></ul>
  7. 7. Skvělé, Vyřeším tím ale všechno?
  8. 8. Problémy při záznamu maker v MS Excelu <ul><li>Záznam makra nelze zahájit v režimu editace buňky </li></ul><ul><ul><li>Totéž platí pro spuštění makra, které nelze provést během editace </li></ul></ul><ul><li>Je-li zaznamenána editace buňky, vždy se uchová kompletní stav buňky </li></ul><ul><ul><li>Nástroj nerozpozná zněny, ale jen výsledný stav včetně obsahu buňky </li></ul></ul><ul><li>Logické stavy </li></ul><ul><ul><li>Nelze zaznamenat logické rozhodování </li></ul></ul><ul><ul><li>Velký problém je porovnání hodnot </li></ul></ul><ul><ul><li>Opakování činností </li></ul></ul><ul><ul><li>Záznam opakované operace jedině opakováním záznamu </li></ul></ul><ul><ul><li>Počet opakování je neměnný, počtem provedení činností uživatele </li></ul></ul><ul><ul><li>Práce s několika tabulkami </li></ul></ul><ul><ul><li>Prakticky není možné současně pracovat s více tabulkami. </li></ul></ul><ul><ul><li>Vždy se zaznamená konkrétně vybraný list, sešit – vzniká tak problém s vykonáním makra nad jinými dokumenty </li></ul></ul><ul><ul><li>Každá aplikace, umožňující záznam má podobná omezení </li></ul></ul>
  9. 9. Jak tato omezení obejít… <ul><li>Odborným zásahem do zápisu makra </li></ul><ul><ul><li>Makro je možné přímo prostřednictvím editoru, který je součástí aplikací upravovat </li></ul></ul><ul><ul><li>Makro je zaznamenáno ve Visual Basicu for Application – je nutná znalost jazyka objektové knihovny aplikace </li></ul></ul><ul><li>Ručním vytvořením (naprogramováním) makra </li></ul><ul><ul><li>Makro je možné od začátku vytvářet zápisem ve VBA </li></ul></ul><ul><ul><li>Oblíbený postup zkušených uživatelů </li></ul></ul><ul><ul><li>Realizací mimo MS Excel – profesionální doplňky </li></ul></ul><ul><ul><li>Programovat doplňky je možné prakticky v kterémkoliv prostředí, které podporuje technologii COM. </li></ul></ul><ul><ul><li>V ideálním případě se vývoj provádí v MS Visual Studiu .NET – přímá podpora </li></ul></ul><ul><ul><li>Doplňky se pak instalují jako samostatné aplikace, které se automaticky implementují do aplikace. Například Adobe Acrobat. </li></ul></ul><ul><ul><li>Programově ovládat aplikace je možné také z prostředí jiné aplikace. Například makro v MS Excelu může spustit MS Word, vytvořit dokument a odeslat jej e-mailem. </li></ul></ul>
  10. 10. Editace maker <ul><li>Soubor s makrem musí být otevřen </li></ul><ul><li>Přes dialog Makra volbou Upravit </li></ul><ul><ul><li>Záložka „ Zobrazení “, skupina „ Makro “, rozbalení tlačítka „ Makra “, nabídka „ Makra…“ </li></ul></ul><ul><ul><li>V dialogu „ Makro “, vybrat požadované makro a zvolit tlačítko „ Upravit “ </li></ul></ul><ul><li>Přímým otevřením editoru Visual Basic </li></ul><ul><ul><li>Volba se nachází v záložce Vývojář </li></ul></ul><ul><ul><li>Položka Visual Basic </li></ul></ul>
  11. 11. Záložka Vývojář <ul><li>Zobrazení záložky </li></ul><ul><ul><li>Záložka „ Soubor “, nabídka „ Možnosti “ </li></ul></ul><ul><ul><li>V dialogu zvolit „Přizpůsobit pás karet“ (platí pro MS Excel 2010), nebo pro MS Excel 2007 zvolit „Oblíbené“ </li></ul></ul><ul><ul><li>Zapnout kartu „Vývojář“ (nebo u verze 2007 zapnout volbu „Zobrazit na pásu kartu „Vývojář“) </li></ul></ul>
  12. 12. Grafické ovládací prvky pro spouštění maker
  13. 13. Spouštění makra pomocí tlačítka <ul><li>Zaměření </li></ul><ul><ul><li>Vhodné pro makra úzce svázaná s konkrétním listem </li></ul></ul><ul><ul><li>Dva způsoby realizace: </li></ul></ul><ul><ul><li>Tlačítko z „Ovládacího prvku formuláře“ </li></ul></ul><ul><ul><ul><li>Snadná implementace </li></ul></ul></ul><ul><ul><ul><li>Jednoduché, ale omezené funkce </li></ul></ul></ul><ul><ul><li>Tlačítko z „Ovládacího prvku ActiveX“ </li></ul></ul><ul><ul><ul><li>Náročná implementace – vhodné pro profesionály </li></ul></ul></ul><ul><ul><ul><li>Bohaté možnosti funkcionality </li></ul></ul></ul><ul><li>Vložení tlačítka </li></ul><ul><ul><li>Záložka „Vývojář“ </li></ul></ul><ul><ul><li>Tlačítko „Vložit“ </li></ul></ul><ul><ul><li>Výběr tlačítka z „Ovládací prvky formuláře“ </li></ul></ul><ul><ul><li>Nakreslení obdélníku – tlačítka </li></ul></ul><ul><ul><li>V dialogu „Přiřadit makro“ vybrat požadované makro </li></ul></ul><ul><ul><li>Editace tlačítka: </li></ul></ul><ul><ul><li>Kliknutím pravého tlačítka </li></ul></ul><ul><ul><li>Výběrem funkce z kontextového menu </li></ul></ul>
  14. 14. Přizpůsobení pásu karet <ul><li>Zaměření </li></ul><ul><ul><li>Vhodné pro obecná makra použitelná v široké škále dokumentů </li></ul></ul><ul><ul><li>Záložka „ Soubor “, nabídka „ Možnosti </li></ul></ul><ul><ul><li>V dialogu zvolit „Přizpůsobit pás karet“ (platí pouze pro MS Excel 2010 u MS Excel 2007 se úpravy provádějí velmi složitě pomocí jazyka XML) </li></ul></ul><ul><ul><li>nebo zvolit „Panel nástrojů Rychlý přístup“ </li></ul></ul>
  15. 15. Historie MS Office aneb trocha historie nikoho nezabije <ul><li>1982 tabulkový kalkulátor Multiplan, v prostředí MS-DOS prohrál v souboji s Lotusem 1-2-3. To vyvolalo rozhodnutí zahájit vývoj nového typu tabulkového kalkulátoru nazvaného Excel </li></ul><ul><li>1983 - Word 1.0 pro MS-DOS – první textový editor, který používal myš </li></ul><ul><li>1987 – Excel 1.0 pro MS-DOS </li></ul><ul><li>1989 - Office 1.0 pro Macintosh </li></ul><ul><li>1990 - Uveden Office 1.0 pro Windows </li></ul><ul><li>1992 - Word 2.0 – první ze známých textových editorů nabízející vlastnost „táhni a pusť“ pro snadné přesouvání textu </li></ul><ul><li>1995 - Office 95 – první plně 32-bitová verze Office, implementace jazyka VBA </li></ul><ul><li>1997 - Office 97 </li></ul><ul><li>1999 - Office 2000 </li></ul><ul><li>2001 - Office XP – od této verze vyžadují Office aktivaci </li></ul><ul><li>2007 - Office 2007 – obsahuje nové grafické uživatelské rozhraní s pásem karet </li></ul>Word 1.0 pro MS DOS Word 2.0 pro MS Windows
  16. 16. Úvod k algoritmizaci
  17. 17. Algoritmus – řešení (technické) úlohy <ul><li>Má-li úloha řešení, vždy existuje postup, podle kterého lze řešení dosáhnout. Postup, který vede k výsledku se nazývá Algoritmus a jeho tvorba Algoritmizace . </li></ul><ul><li>Algoritmus je jednoznačný, přesný postup pro řešení určitého druhu problémů, který je prováděn pomocí konečného počtu kroků. Jinými slovy, algoritmus popisuje proces, kterým na základě vstupních údajů se získají požadované výsledky. </li></ul><ul><li>Každý program (úloha, funkce atd.) prováděný počítačem je v podstatě algoritmem, který počítač vykonává. Procesor čte instrukce programu, představující jednotlivé kroky algoritmu, které vykonává. </li></ul>
  18. 18. Vlastnosti algoritmů <ul><li>Každý algoritmus musí mít tyto vlastnosti: </li></ul><ul><li>Determinovanost (předurčenost, korektnost) algoritmus musí být srozumitelný, přesný a jednoznačný, tzn. že vždy je znám další krok, pro platné (korektní) vstupní hodnoty končí správným výsledkem a pro stejné vstupní hodnoty vždy dává stejné výsledky.Algoritmus nesmí být závislý na osobách, typech a vlastnostech zařízení, které ho realizují. </li></ul><ul><li>Obecnost (hromadnost ) algoritmus je řešením celé skupiny úloh, které se od sebe liší jen platnými vstupními daty. Platná (validní) vstupní data mohou být vymezena omezeními či pravidly. </li></ul><ul><li>Resultativnost (konečnost) každý algoritmus musí poskytovat výsledky a ukončit se po konečném počtu kroků (operací). </li></ul><ul><ul><li>Některé úlohy je možné řešit několika způsoby - různými algoritmy, které se mohou svým postupem značně lišit. Snahou je zvolit co nejefektivnější algoritmus, který vrací výsledek v nejmenším počtu kroků, je přehledný a srozumitelný. </li></ul></ul>
  19. 19. Metody zápisu algoritmů <ul><li>Stejně důležitý jako samotný algoritmu je i forma jeho zápisu. Zápis musí být jednoznačný, srozumitelný a snadno reprodukovatelný. Pro zápis algoritmů se používají mnohé metody, které využívají tři základní způsoby: </li></ul><ul><li>Slovní zápis patří k nejčastějšímu způsobu zápisu algoritmů. Používáme jej všichni, když vysvětlujeme určitý pracovní postup. Je často nepřesný a nepřehledný. Neumožňuje automatický převod do formy počítačového programu. </li></ul><ul><li>Symbolický zápis používat jasná a jednoznačná pravidla, která se opírají o základní stavební prvky vyjádřené klíčovými slovy . Typickým příkladem jsou programovací jazyky. </li></ul><ul><li>Grafický zápis patří mezi velice oblíbené metody. Grafický zápis odbourává problém s mnohoznačností slovního zápisu a neznalostí jazyka čímž usnadňuje orientaci v algoritmu. </li></ul><ul><ul><li>Zjednodušeně lze tvrdit, že jednoduché algoritmy se mnohem snadněji vyjadřují (zapisují) graficky. Kdežto složité algoritmy se snadněji vyjadřují symbolickým zápisem s přesně stanovenými pravidly. Často se v praxi používají kombinace slovního (symbolického) a grafického zápisu. </li></ul></ul>
  20. 20. Příklady metod zápisu algoritmů <ul><li>Slovní zápis: </li></ul><ul><ul><li>Kuchařka </li></ul></ul><ul><ul><li>Návod na použití </li></ul></ul><ul><li>Symbolický zápis: </li></ul><ul><ul><li>Programovací jazyky </li></ul></ul><ul><li>Grafický zápis: </li></ul><ul><ul><li>Schematické návody </li></ul></ul><ul><ul><li>Vývojové diagramy (bloková schémata) znázornění algoritmu řešení úlohy jednotnými značkami a zkratkami (tento způsob zde bude využíván). </li></ul></ul><ul><ul><li>Strukturogramy – přesnější, vhodné pro strukturované programování </li></ul></ul><ul><ul><li>Datově orientované diagramy HIPO </li></ul></ul><ul><ul><li>Rozhodovací tabulky – používané při velmi složitých větveních a další… </li></ul></ul>+ Pravda - Nepravda Tiskni „Číslo je liché“ start Z = 0 konec Tiskni „Číslo je sudé“ Načti číslo N Z = N modulo 2
  21. 21. Základní stavební prvky algoritmů <ul><li>Proměnné – symbolicky pojmenované údaje, které se při zpracování nahradí konkrétními hodnotami, což mohou být texty, čísla, obrázky, schémata atd. Proměnné mohou být vstupní, pracovní a výstupní. </li></ul><ul><li>Začátek algoritmu – počáteční bod, od nějž začíná zpracování </li></ul><ul><li>K onec algoritmu – konečný bod, ukončuje algoritmus </li></ul><ul><li>Příkazy (kroky) algoritmu – jednotlivé přesně vymezené a oddělené operace, které předepisují úkony, prováděné s proměnnými </li></ul><ul><li>Podprogramy (subrutiny/funkce) – předem definované části algoritmu, které figurují v algoritmu jako jeden krok, ale mají svou vlastní strukturu </li></ul><ul><li>Logické výrazy ( podmínky ) –relace, či yřetěyení relací pomocí logických spojek. Výsledkem je hodnota TRUE (pravda) = podmínka je splněna nebo FALSE (nepravda) = podmínka není splněna. </li></ul><ul><li>Větvení (rozhodování) – postup, kdy na se základě vyhodnocení podmínky provádí větvení algoritmu. Při splněné podmínce se provádí jedna sekvence kroků, při nesplněné podmínce jiná sekvence kroků. </li></ul><ul><li>Blok (sekvence) – posloupnost po sobě jdoucích příkazů (kroků) </li></ul><ul><li>Cyklus – opakování příkazu nebo bloku (sekvence) příkazů (kroků) </li></ul><ul><li>Skok – přerušení přirozené posloupnosti průchodu algoritmem a přenesení zpracování na jiné místo označené návěštím. </li></ul>
  22. 22. ??? kontrolní otázky ??? <ul><li>Co je identifikátor? </li></ul><ul><li>Jaká pravidla platí pro tvorbu identifikátoru? </li></ul><ul><li>Jaký význam má volba „Použít relativní odkazy“ při záznamu maker? </li></ul><ul><li>Je možné zaznamenat editaci části buňky? </li></ul><ul><li>Kde se uchovávají makra? </li></ul><ul><li>Jaký je rozdíl mezi soubory s příponou XSLX a XSLM? </li></ul><ul><li>K čemu slouží zabezpečení maker a jak funguje? </li></ul><ul><li>Jaké jsou způsoby spouštění maker? </li></ul><ul><li>Jak zobrazit kartu „Vývojář“? </li></ul><ul><li>Co je algoritmus a co znamená algoritmizace? </li></ul><ul><li>Jaké vlastnosti musí splňovat každý algoritmus? </li></ul><ul><li>Vyjmenujte min. tři metody zápisu algoritmů </li></ul>
  23. 23. Ing. David Fojtík, Ph.D. A922, kl. 4193 david.fojt i k @vsb.cz 352 - Katedra automatizační techniky a řízení

×