3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová TÉMA: Vytváření a úprava maker Ve vytvořené databázi potřebuje sekretářka společnosti „Naše zahrada“ zautomatizovat některé úkony pomocí maker. Zadání: Otevřete databázi Makra.accdb. 1. Vytvořte makro Objednávky, které otevře náhled sestavy Objednávky. a. Do zápatí formuláře Objednávky přidejte tlačítko Sestava s textem Objednávky dle měst, které spustí makro po kliknutí. b. Sestava se otevře pouze tehdy, zadá-li uživatel slovo Ano z klávesnice (použijte funkci InputBox). V dialogovém okně se zobrazí text Opravdu chcete zobrazit sestavu?, titulek okna bude Potvrzení. 2. Vytvořte makro Zpráva, které zobrazí okno se zprávou Cibulky, okno bude mít titulek Kategorie. a. Makro se spustí při získání fokusu v textovém poli NázevKategorie ve formuláři Kategorie. b. Makro se spustí pouze pro kategorii Bulbs. 3. Vytvořte makro Zavřít, které zavře formulář Zákazníci. a. Makro se spustí dvojklikem na tlačítko Zavřít na formuláři Zákazníci. b. Makro se spustí pouze tehdy, bude-li mít přepínací tlačítko Ano na formuláři Zákazníci hodnotu True (bude zatrženo). c. Makro uložte jako modul. 4. Vytvořte makro Tabulka, které zobrazí dotaz Výběr objednávek v režimu pro čtení a přejde na poslední záznam. a. Makro se spustí při přesunu myši nad tělem karty formuláře Zaměstnanci, je-li aktivní ouško Základní údaje. b. Makro se spustí pouze tehdy, bude-li zatrženo Objednávky ve skupině voleb Tabulka. c. Pro spuštění makra ještě vytvořte tlačítko na panelu nástrojů Rychlý přístup. 5. Zavřete databázi. Řešení 3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová Řešení: Po spuštění aplikace MS Access (tlačítko Start/Všechny programy/Microsoft Office/Microsoft Access 2010) se otevře Access v zobrazení Microsoft Office Backstage (karta Soubor). Tlačítko Otevřít, najít soubor dle zadání (nebo v již otevřené aplikaci MS Access karta Soubor/Otevřít). Při otevření databáze se může zobrazit panel zpráv s výstrahou zabezpečení. Tato výstraha se zobrazuje v případě, že se v otevíraném souboru nachází potenciálně nebezpečný, nepodepsaný nebo aktivní obsah. Pokud jste si jisti, že jste soubor vytvořili sami, či pochází z důvěryhodného zdroje a můžete důvěřovat jeho obsahu, můžete tento obsah povolit tlačítkem Povolit obsah. Zobrazování tohoto panelu závisí na nastavení Centra zabezpečení (karta Soubor/tlačítko Možnosti/položka Centrum zabezpečení/tlačítko Nastavení centra zabezpečení). 1. Karta Vytvoření/skupina Makra a kód/příkaz Makro/Makro. Vytvoří se nové makro v návrhovém zobrazení. Pozn. Makra slouží pro automatizaci práce s databází. Umožňují jedním kliknutím automaticky provést více nadefinovaných činností. Jednotlivé činnosti (akce) definujeme v prostřední části návrhového zobrazení. Nejčastější činnosti (akce) jsou k dispozici v seznamu s textem Přidat novou akci, další akce, příkazy ovlivňující chod makra a další objekty v databázi jsou k dispozici v podokně úloh Katalog akcí. V seznamu s textem Přidat novou akci zvolit položku Otevřít sestavu, vybrat Název sestavy, nastavit způsob zobrazení v poli Zobrazit na položku Náhled. Uložit makro – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zadat název makra dle zadání. Makro lze vyzkoušet jeho spuštěním – dvakrát kliknout na makro v navigačním podokně (nebo přímo v návrhovém zobrazení makra – karta Makra – nástroje/záložka Návrh/skupina Nástroje/příkaz Spustit. a. Zobrazit formulář v návrhovém zobrazení – např. kontextová nabídka formuláře v navigačním podokně/Návrhové zobrazení. Přidat tlačítko do formuláře (vypnout průvodce ovládacích prvků) – karta Nástroje návrhu formuláře/záložka Návrh/skupina Ovládací prvky/zobrazit galerii Ovládací prvky/zrušit zatržení Použít průvodce ovládacích prvků, příkaz Tlačítko, kliknout do zápatí formuláře, ovládací prvek bude vytvořen. Nastavit jeho vlastnosti – zobrazit podokno úloh Seznam vlastností (pokud je potřeba) – karta Nástroje návrhu formuláře/záložka Návrh/skupina Nástroje/příkaz Seznam vlastností. Karta Formátové/vlastnost Titulek, vepsat text který bude na tlačítku, karta Jiné/vlastnost Název, vepsat název tlačítka dle zadání, karta Událostní, vlastnost Při kliknutí – zvolit v seznamu makro Objednávky. Pozn. Každý ovládací prvek má své událostní vlastnosti (události, které mohou u tohoto prvku nastat). Jednotlivým událostem můžeme přiřadit makro, které se po provedení události automaticky spustí. Uložit formulář – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup). Vyzkoušet fungování makra – zobrazit formulář ve formulářovém zobrazení, kliknout na tlačítko. b. Zobrazit makro v návrhovém zobrazení (kontextová nabídka makra/Návrhové zobrazení. Zobrazit podokno úloh Katalog akcí (pokud ještě není zobrazeno) – karta Makra – nástroje/záložka Návrh/skupina Zobrazit či skrýt/příkaz Katalog akcí. Přidat do makra podmínku pomocí příkazu If – v podokně úloh Katalog akcí skupina Běh programu/dvakrát kliknout na položku If, příkaz bude vložen do těla makra. Kliknout 3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová na zelenou šipku v pravém horním rohu příkazu If a přesunout jej na první pozici nahoru. Dále uchopit myší akci OtevřítSestavu a přesunout ji do těla příkazu If. Vložit podmínku pro spuštění makra – kliknout na příkaz If, kliknout na příkaz Kliknutím sem spustíte Tvůrce vpravo od pole s textem Podmíněný výraz, spustí se Tvůrce výrazů. Napsat výraz: InputBox(„Opravdu chcete zobrazit sestavu?“, „Potvrzení“)=“Ano“) následujícím způsobem: Ve spodní části okna zobrazit Funkce/Předdefinované funkce/Zprávy/dvakrát kliknout na funkci InputBox. Místo textu <> vepsat text „Opravdu chcete zobrazit sestavu?“, místo textu <> vepsat text „Potvrzení“, zbytek textu vymazat po konečnou závorku (tyto argumenty není nutné nastavovat). Za závorku dopsat text =“Ano“, tlačítko OK. Makro uložit – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zavřít makro. Vyzkoušet makro prostřednictvím tlačítka na formuláři Objednávky viz bod 1a. 2. Karta Vytvoření/skupina Makra a kód/příkaz Makro/Makro. Vytvoří se nové makro v návrhovém zobrazení. V seznamu s textem Přidat novou akci zvolit položku OknoSeZprávou, do pole Zpráva vepsat text zprávy dle zadání, do pole Titulek vepsat titulku dle zadání. Uložit makro – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zadat název makra dle zadání. 3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová Makro lze vyzkoušet jeho spuštěním – dvakrát kliknout na makro v navigačním podokně (nebo přímo v návrhovém zobrazení makra – karta Makra – nástroje/záložka Návrh/skupina Nástroje/příkaz Spustit. a. Zobrazit formulář v návrhovém zobrazení (např. kontextová nabídka formuláře v navigačním podokně/Návrhové zobrazení). Označit textové pole dle zadání, přiřadit makro události získání fokusu – v podokně Seznam vlastností (karta Nástroje návrhu formuláře/záložka Návrh/skupina Nástroje/příkaz Seznam vlastností)/karta Událostní/vlastnost Při získání fokusu, zvolit vytvořené makro. Vyzkoušet fungování makra – zobrazit formulář ve formulářovém zobrazení. Ihned po zobrazení formuláře bude makro automaticky spuštěno, protože pole Kategorie je první pole, do kterého bude umístěn automaticky kurzor (získá fokus) po zobrazení formuláře. Makro bude spuštěno automaticky kdykoliv přejdeme na toto pole. b. Zobrazit makro v návrhovém zobrazení (kontextová nabídka makra/Návrhové zobrazení. Zobrazit podokno úloh Katalog akcí (pokud ještě není zobrazeno) – karta Makra – nástroje/záložka Návrh/skupina Zobrazit či skrýt/příkaz Katalog akcí. Přidat do makra podmínku pomocí příkazu If – v podokně úloh Katalog akcí skupina Běh programu/dvakrát kliknout na položku If, příkaz bude vložen do těla makra. Kliknout na zelenou šipku v pravém horním rohu příkazu If a přesunout jej na první pozici nahoru. Dále uchopit myší akci OknoSeZprávou a přesunout ji do těla příkazu If. Vložit podmínku pro spuštění makra – kliknout na příkaz If, kliknout na příkaz Kliknutím sem spustíte Tvůrce vpravo od pole s textem Podmíněný výraz, spustí se Tvůrce výrazů. Napsat výraz: Formuláře![Kategorie]![NázevKategorie]=“Bulbs“ následujícím způsobem: ve spodní části okna zobrazit NázevSouboruDatabáze/Formuláře/Všechny formuláře/Kategorie, dvakrát kliknout na pole NázevKategorie. Dopsat text =“Bulbs“, tlačítko OK. Makro uložit – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zavřít makro. Otevřít formulář Kategorie, vyzkoušet makro viz bod 1a. 3. Karta Vytvoření/skupina Makra a kód/příkaz Makro/Makro. Vytvoří se nové makro v návrhovém zobrazení. V seznamu s textem Přidat novou akci zvolit položku ZavřítOkno, v seznamu Typ objektu vybrat položku formulář, v seznamu Název objektu vybrat formulář dle zadání. Uložit makro – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zadat název makra dle zadání. Makro lze vyzkoušet jeho spuštěním – dvakrát kliknout na makro v navigačním podokně (nebo přímo v návrhovém zobrazení makra – karta Makra – nástroje/záložka Návrh/skupina Nástroje/příkaz Spustit. Pozn. Aby mohlo makro správně fungovat, musíme mít zobrazen formulář Zákazníci. a. Zobrazit formulář v návrhovém zobrazení (např. kontextová nabídka formuláře v navigačním podokně/Návrhové zobrazení). Označit tlačítko dle zadání, přiřadit makro tlačítku – v podokně Seznam vlastností (karta Nástroje návrhu formuláře/záložka Návrh/skupina Nástroje/příkaz Seznam vlastností)/karta Událostní/vlastnost Při poklepnutí, zvolit vytvořené makro. Vyzkoušet fungování makra – zobrazit formulář ve formulářovém zobrazení, dvakrát kliknout na tlačítko. b. Zobrazit makro v návrhovém zobrazení (kontextová nabídka makra/Návrhové zobrazení. Zobrazit podokno úloh Katalog akcí (pokud ještě není zobrazeno) – karta Makra – nástroje/záložka Návrh/skupina Zobrazit či skrýt/příkaz Katalog akcí. Přidat 3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová do makra podmínku pomocí příkazu If – v podokně úloh Katalog akcí skupina Běh programu/dvakrát kliknout na položku If, příkaz bude vložen do těla makra. Kliknout na zelenou šipku v pravém horním rohu příkazu If a přesunout jej na první pozici nahoru. Dále uchopit myší akci ZavřítOkno a přesunout ji do těla příkazu If. Vložit podmínku pro spuštění makra – kliknout na příkaz If, kliknout na příkaz Kliknutím sem spustíte Tvůrce vpravo od pole s textem Podmíněný výraz, spustí se Tvůrce výrazů. Napsat výraz: Formuláře![Zákazníci]![Ano]=True následujícím způsobem: ve spodní části okna zobrazit NázevSouboruDatabáze/Formuláře/Všechny formuláře/Zákazníci, dvakrát kliknout na pole Ano, vepsat text =True, tlačítko OK. Makro uložit – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zavřít makro. Otevřít formulář Kategorie, vyzkoušet makro viz bod 1a. c. Označit makro dle zadání, karta Soubor/Uložit objekt jako/v dialogovém okně v seznamu Typ zvolit položku Modul, tlačítko OK. Potvrdit převedení ošetření chyb a zahrnutí komentářů, tlačítko Převést. Access automaticky z makra vytvoří modul jazyka VBA a spustí Editor jazyka Visual Basic. Převedené makro zobrazíme kliknutím na modul makra v okně projektů. Editor lze zavřít tlačítkem Zavřít. 4. Karta Vytvoření/skupina Makra a kód/příkaz Makro/Makro. Vytvoří se nové makro v návrhovém zobrazení. V seznamu s textem Přidat novou akci zvolit položku OtevřítDotaz, v seznamu Název dotazu vybrat dotaz dle zadání, v seznamu Režim dat zvolit položku Úpravy. Dále přidat další akci – v seznamu Přidat novou akci zvolit položku PřejítNaZáznam, v seznamu Typ objektu zvolit položku dotaz, v seznamu Název objektu zvolit název dotazu dle zadání, v seznamu Záznam zvolit položku poslední. Uložit makro – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zadat název makra dle zadání. Makro lze vyzkoušet jeho spuštěním – dvakrát kliknout na makro v navigačním podokně (nebo přímo v návrhovém zobrazení makra – karta Makra – nástroje/záložka Návrh/skupina Nástroje/příkaz Spustit. a. Zobrazit formulář v návrhovém zobrazení (např. kliknout pravým tlačítkem myši na formulář v navigačním podokně/Návrhové zobrazení). Označit ouško karty Základní údaje, přiřadit makro události – v podokně Seznam vlastností (karta Nástroje návrhu formuláře/záložka Návrh/skupina Nástroje/příkaz Seznam vlastností)/karta Událostní/vlastnost Při přesunu myši, zvolit vytvořené makro. Vyzkoušet fungování makra – zobrazit formulář ve formulářovém zobrazení, přejet myší nad tělem formuláře. Pozn. Vybereme-li jinou kartu formuláře, nebude se makro spouštět. b. Zobrazit makro v návrhovém zobrazení (kontextová nabídka makra/Návrhové zobrazení. Zobrazit podokno úloh Katalog akcí (pokud ještě není zobrazeno) – karta Makra – nástroje/záložka Návrh/skupina Zobrazit či skrýt/příkaz Katalog akcí. Přidat do makra podmínku pomocí příkazu If – v podokně úloh Katalog akcí skupina Běh programu/dvakrát kliknout na položku If, příkaz bude vložen do těla makra. Kliknout na zelenou šipku v pravém horním rohu příkazu If a přesunout jej na první pozici nahoru. Dále uchopit myší postupně akce Otevřít dotaz a PřejítNaZáznam a přesunout je postupně do těla příkazu If. Vložit podmínku pro spuštění makra – kliknout na příkaz If, kliknout na příkaz Kliknutím sem spustíte Tvůrce vpravo od pole s textem Podmíněný výraz, spustí se Tvůrce výrazů. Napsat výraz: Formuláře![Zaměstnanci]![Tabulka]=1 následujícím způsobem: ve spodní části okna 3 Makra Příklad 4 Access 2010 OPF v Karviné, Slezská univerzita v Opavě Kateřina Slaninová zobrazit NázevSouboruDatabáze/Formuláře/Všechny formuláře/Zaměstnanci, dvakrát kliknout na pole Tabulka, dopsat =1, tlačítko OK. Pozn. Zatržení položky skupiny voleb se ukládá v podobě její hodnoty (hodnotu lze zjistit v návrhovém zobrazení formuláře, vlastnost Hodnota volby. Makro uložit – karta Soubor/Uložit (nebo tlačítko Uložit na panelu nástrojů Rychlý přístup), zavřít makro. Otevřít formulář Kategorie, vyzkoušet makro viz bod 1a. c. Tlačítko Přizpůsobit panel nástrojů Rychlý přístup/Další příkazy…/v dialogovém okně Možnosti aplikace Access v seznamu Zvolit příkazy z: vybrat položku Makra, přesunout makro do pravé části okna (tlačítko Přidat>>). Pozn. Tlačítku lze změnit ikonu a zobrazovaný text. 5. Zavřít databázi - karta Soubor/Zavřít databázi (nebo tlačítko Zavřít – x v pravém horním rohu okna). Zpět na zadání