Jste zde: Úvodní stránka » excel » vba » ms-excel-2007-makra-prirazeni
Přiřazení maker tlačítkům - Excel 2007
Další z serie článku o Excel 2007 a makrech
Cíl: vytvoření tlačítka s akcí
Jelikož se mi hromadi dotazy na makra (na ktere nemohu odpovídat jednotlivě) rozhodl jsem se nejčastěji se objevujíci dotazy zodpovědět v článků ať mohou pomoci i jiným lidem.
Požadavek: Jak vytvořit tlačítko, které po kliknutí provede odskok na jiný list.
Praktický příklad: Pro jednoducho představu budete mít sešit s osmi listy. První list v Excelu 2007 pojmenován seznam a další Pondělí, Úterý až Neděle. Budete potřebovat umístit na list seznam sedm tlačítek, která Vás přenesou na listy s požadovanými názvy. Pro přehlednost si tlačítka přejmenujeme Pondělí - Neděle. A z každého listu s názvem dne se budete potřebovat přes tlačítko vrátit na list s názvem seznam.
Jak na to?
Můžeme využít dvě možnosti:
- ovládací prvky formuláře - a nahrát makro
- ovládací prvky ActiveX - a kod si doprogramovat ve Visual Basicu
Ukážu obě varianty. Vybrat si můžete co je pro Vás jednodužší a rychlejší. Obě varianty povedou k požadovanému cíly.
Vytvoření listu
Než začneme vytvářet jednotlivá tlačítka. Vytvoříme si patřičné listy. První list pojmenujeme seznam a další jmény dnů od pondělí do neděle.
Když máme hotovo můžeme umísťovat tlačítka.
Ovládací prvky formuláře
Tlačítka umistíme ze záložky Vývojař z oddlílu Ovládací prvky si rozbalíme položku Vložit... A poté vybereme ono tlačítko formuláře. Je nutno zvolit to správné jinak můžete vybrat tlačítko ActiveX o čemž se zmiňuji dále.
Jakmile umístime tlačítko zobrazí se nám možnost vytvořit pro toto tlačítko makro. V zobrazeném okně si buď vybereme z existujících. Nebo vytvoříme nové název možného makra se zvolí automaticky dle názvu tlačítka (to přiřadí Excel). Stačí zmačknout Záznam.
V zobrazeném okně si můžeme zvolit název makra (doporučuji změnit - třeba na název skok-na-list-pondeli). Změnu názvu doporučuji z vlastní zkušenosti. Až budete mít více maker (třeba 20) nebudete si pamatovat co jenotlivá dělají. Další možnosti zda chcete makro uložit jen pro tento sešit či jej budete využívat i jinde. Jelikož jde o ukázku necháme ho jen pro tento sešit.
No a případně můžeme přiřadit klávesovou zkratku...
A po stisku OK již nahraváme. Stačí kliknout na list Pondělí a makro ukončit. Kliknutím na modrý čtverec.
Po kliknutí na tlačítko již skok na pondělí funguje. Jen to tlačítko je nějaké divné jelikož se jmenuje Tlačítko 29. Takže si přes pravý klik myší dáme Upravit text a změníme jeho název na pondělí.
A je hotovo. Jen pro ostatní dny tento postup zopakujeme.
No pokud se Vám tento postup nelíbí, můžete zkustit přes ActiveX a Visual Basic.
Ovládací prvky ActiveX
Tlačítka umistíme ze záložky Vývojař z oddlílu Ovládací prvky si rozbalíme položku Vložit... A poté vybereme ono tlačítkoActiveX
Tlačítko umístíme na list v požadované velikosti. Holt Excel mu přiřadí název CommandBotton1. Což jako název tlačítka není optimálni (pokud nejste blázni či politici). Takže si ho přejmenujeme. Opět ze záložky Vývojař z oddlílu Ovládací prvky si zobrazíme Vlastnosti. Kde v poli Caption změníme nepraktický název třeba na Středu.
Opět ze záložky Vývojař z oddlílu Ovládací prvky se přepneme do modu Režim návrhu. Teď stačí kliknout na tlačítko a dostaneme se do Visual Basicu. Kde již tlačítku přidělíme funkci. Tj. nami požadovaný skok na list Středa (protože tlačítko se jmenuje středa). Takže stačí jen nasat kód:
Sheets("Středa").Select
A když vypneme režim již tlačítko funguje. Podobně stačí dotvořit pro ostatní dny. A v dalších listech vložit tlačítko pro skok na Seznam.
Výsledek ke stažení
Ke stažení dávám excelovský soubor ke stažení.
PS: Když to budete odevzdávat ve škole tak nezapomeňte změnit moje jméno v patičce :)
Excel tlačítka
- příklad ke staženi v Excelu (velikost 95 kB)
Doporučení
Originální Excel 2007 spolu s WORDem 2007, Power Point 2007 a One Note 2007 můžete mít u microsoftu za 1600 Kč.
Upozornění
Pokud se jedná o nějaký úkol studentů který dostaly ve škole. Tak se danému učiteli omlouvám. bude si asi muset vymyslet úkol jiný. Na druhou stranu může být rád, že jho studenti dovedou použít seznam a google :). Je zajimavé sledovat jak přesně daný výraz jsou studenti schopni zadat. Navíc když se podobně originální dotat v jednom dni objeví 4x z podobných IP adres, tak na tom něco bude.
Tím nechci říci, že prezentují všechny dotazy došlé emailem. To by den musel mit 96 hodin.
Článek byl aktualizován: 14.01.2010 17:20
Další články k tématu
- VBA makra - úvod
- Formuláře úvod
- Odebrání hypertexového odkazu
- Práce s listy
- Vložení vzorce do komentáře
- Přiřazení maker tlačítkům - Excel 2007 - právě čtete
- Zobrazení dialogu
- Smazat aktuální soubor
- Události ve VBA
- Automatické spuštění skriptu VBA
- Msg box - dialogové okno
- Podmínky If, Then, ElseIf, Else
- Cykly - For ... Next
- Goto
Komentáře
Zdeněk
Přidáno: 23.02.10 21:03
Vaše stránky jsou super, čerpám z nich vědomosti. Jen jedna(tedy vice) věc se mi nedaří. Potřebuji k tlačítku přiřadit odkaz na soubor, který je uložený na disku.Zkoušel jsem použít hypertextový odkaz pomocí Ctrl+K. Odkaz funguje, ale pouze při aktivním \"Režimu návrhu\". Můžete mi nějak pomoci?
Pavel Lasák
Přidáno: 24.02.10 20:45
To Zdeněk: Tlačítko má soubor otevřít?
Pavel Lasák
Přidáno: 25.02.10 15:30
To Zdeněk: Pro otevření souboru je příkaz: Workbooks.Open FileName:="C:\\adresar\\nazev-souboru.xls"
Honza
Přidáno: 13.04.10 07:09
Jak prosím importovat pole buněk z jednoho místa na druhé pomocí makra? Díky
Pavel Lasák
Přidáno: 13.04.10 21:26
To Honza: Rád bych pomohl ale nerozumím otázce.
HonzaB
Přidáno: 03.06.10 14:32
Dobrý den, potřebuji poradit. Jde vytvořit makro aby se mi otevřelo okno pro hledání (ctrl+f)?
Pavel Lasák
Přidáno: 03.06.10 16:21
To HonzaB: Viz kod:
Application.Dialogs(xlDialogFormulaFind).Show
nebo
Application.SendKeys "^f"
Přidání nového komentáře
Za obsah komentářů neodpovídám, jelikož jsou komentáře publikovány ihned po jejich napsání čtenářem. Toto nemohu nijak ovlivnit. Přesto si vyhrazuji možnost jakýkoli neslušný komentář smazat bez udání důvodu.
Nejnovější článek
Z článku o
excel jsem jako poslední přidal či upravil článek
02.07.2010:
Funkce datum a čas - přehled.
Nejčtenější článek
Excel
- Základy MS Excel
- menu Soubor
- menu Domů - FORMÁT
- menu Vložení
- menu Vložení - GRAFY
- menu Vzorce - Funkce
- menu Vzorce - Matice
- menu Data
- menu Revize (Nástroje)
- menu Vývojař - VBA
- VBA makra - úvod
- Formuláře úvod
- Odebrání hypertexového odkazu
- Práce s listy
- Vložení vzorce do komentáře
- Přiřazení maker tlačítkům - Excel 2007
- Zobrazení dialogu
- Smazat aktuální soubor
- Události ve VBA
- Automatické spuštění skriptu VBA
- Msg box - dialogové okno
- Podmínky If, Then, ElseIf, Else
- Cykly - For ... Next
- Goto
- Praktické příklady
- Šablony - Templates
- Testy
- Ostatní
Novinky
Zobrazení dialogu pomocí VBA
Excel - 02.07.2010:
Funkce datum a čas - přehled
Access - 23.02.2010:
Menu Soubor - access 2010
Power Point - 08.03.2010:
Menu Animace - Power Point 2010
Outlook - 25.02.2010:
Menu Soubor - Outlook 2010
Project - 26.02.2010:
Menu Soubor - Project 2010
OneNote - 10.02.2010:
MS OneNote 2010 - pás karet
Poděkování
Stránky o MS Office produktu společnosti Micosoft. Neslouží jako technická podpora.
| XHTML 1.1 | CSS | Email na autora: lasak@centrum.cz | Copyright: Pavel a Danka 2006 - 2010 |
3503
Tento web zatím neprošel jazykovou korekturou.
Vlastní redakční systém pohánějící tento web je v BETA verzi, omluvte případné problémy.