Přeskočit navigaci | Přeskočit na novinky

Videokurzy na Seduo: Excel pro začátečníky (přes 13.000 studujících) nebo kompletní kurz Excel (6 hodin - 160 videí).

     

Jste zde: Úvodní stránka » excel » vba-formulare » excel-vba-formular-commandbutton

CommandButton (Tlačítko) ve formuláři VBA


... CommandButton (Tlačítko) a jeho použítí ve formuláři za pomocí VBA...

Vložit CommandButton

Karta Vývojář - Visual Basic. Menu Insert - UserForm. Z Toolboxu vybereme CommandButton.

MS Excel - formuláře - CommandButton (Tlačítko)

Vlastnosti CommandButton

Seznam základních vlastností prvku CommandButton (Tlačítko). Okno vlastností můžeme zobrazit klávesou F4.

  • (Name)
  • Accelerator
  • AutoSize
  • BackColor
  • BackStyle
  • Cancel
  • Caption
  • ControlSource
  • ControlTipText
  • Default
  • Enabled
  • Font
  • ForeColor
  • Height
  • HelpContextID
  • Left
  • Locked
  • MouseIcon
  • MousePointer
  • Picture
  • PicturePosition
  • TabIndex
  • TabStop
  • Tag
  • TakeFocusOnClick
  • Top
  • Visible
  • Width
  • WordWrap

(Name)

Pojmenování prvku (můžeme změnit). Ve kódech se pak budeme na tento prvek odkazovat jeho jedinečným názvem. V našem příkladě je (Name) CommandButton1.

Pozor: Název prvku se musí změnit před psaním kódu. Když dojde ke změně názvu po napsání VBA kódu jeho odkaz se nezmění.

Accelerator

Nastaví nebo získá přístupovou (zkratkovou klávesu Alt) klávesu daného ovládacího prvku.

  CommandButton1.Accelerator = "C"
  ZkratkovaKlavesa = CommandButton1.Accelerator

AutoSize

Specifikuje, zda mění objekt automaticky velikost v souladu se svým celým obsahem. Pokud mění tak velký text zvětší objekt. Hodnoty:

  • False (výchozí nastavení) - nemění velikost
  • True - změní velikost podle textu.
  CommandButton1.AutoSize = False
  CommandButton1.AutoSize = True
  AutosizeStav = CommandButton1.AutoSize

BackColor

Vrací nebo nastavuje barva pozadí objektu TextBox.

  CommandButton1.BackColor = RGB(255, 128, 128)
  BarvaPozadi = CommandButton1.BackColor

BackStyle

Vrací nebo nastavuje styl pozadí objektu.

  • fmBackStyleTransparent (0) Pozadí je průhledné.
  • fmBackStyleOpaque (1) Pozadí je neprůhledné (výchozí nastavení).
  CommandButton1.BackStyle = fmBackStyleTransparent

Cancel

Vrací nebo nastavuje hodnotu, která udává, zda CommandButton (Tlačítko) je stornovacím tlačítkem

  • True - je stornovacím tlačítkem.
  • False - není stornovacím tlačítkem (výchozí nastavení).
  CommandButton1.Cancel = True

Caption

Varcí Text na objektu Label (Popis) nebo ho nastaví.

  CommandButton1.Caption = "muj text"
  AktualniTextVCheckBox = CommandButton1.Caption

ControlTipText

Bublinková nápověda. Zobrazí se při najetí nad objekt. Případně vratí nastavenou hodnotu.

  CommandButton1.ControlTipText = "Můj text v bublinkové nápovědě."   ControlTipText = CommandButton1.ControlTipText

Default

Určí nebo vrací hodnotu zda je tlačítko CommandButton výchozím formuláře.

  • True - je výchozím tlačítkem.
  • False - není výchozím tlačítkem (výchozí nastavení)
  CommandButton1.Default = True

Enabled

Určuje, zda se může ovládací prvek stát aktivním a odpovídat na události, generované uživatelem. Nebo specifikuje jak je tato vlastnost aktuálně nastavena.

  CommandButton1.Enabled = True
  CommandButton1.Enabled = False
  EnabledNastaveni = CommandButton1.Enabled

Font

Vrací nastavení fontu nebo nastaví požadovaný fontu (velikost, typ, ...). Případně vratí nastavené hodnoty.

  CommandButton1.Font.Italic = True
  CommandButton1.Font.Size = 22
  CommandButton1.Font.Bold = True
  CommandButton1.Font = "Times New Roman"
  velikostFontu = CommandButton1.Font.Size
  typFontu = CommandButton1.Font
  FontJeKurziva = CommandButton1.Font.Italic

ForeColor

Varcí nastavení nebo definuje barvu popředí objektu tj. v našem případě jakou barvu bude mít text.

  CommandButton1.ForeColor = RGB(255, 255, 0)
  BarvaPopredi = CommandButton1.ForeColor

Height

Vrací výšku objektu nebo jeho výšku nastaví.

  CommandButton1.Height = 28
  Vyska = CommandButton1.Height

HelpContextID

Odkaz do nápovědy ve formátu Microsoft Windows pro konkretní objekt

  

Left

Umístění objektu od levého okraje. Nebo zjištění jak je umístěn objekt.

  umistenileft = CommandButton1.Left
  CommandButton1.Left = 12

Locked

Určuje, zda lze ovládací prvek editovat. Případně vrací stav této vlastnosti. Nabývá hodnot TRUE (nelze editovat), FALSE (lze editovat, jedná se o vychozí nastavení).

  CommandButton1.Locked = TRUE
  CommandButton1.Locked = FALSE

MouseIcon

Přiřazení ikony pro objekt

  CommandButton1.MouseIcon = LoadPicture("c:\mojeIkonka.ico")

MousePointer

Vrací typ ukazatele myši, nebo nastaví ukazatel myši. Hodnoty jsou:

  • fmMousePointerDefault 0 - standartní ukazatel
  • fmMousePointerArrow 1
  • fmMousePointerCross 2
  • fmMousePointerIBeam 3
  • fmMousePointerSizeNESW 6
  • fmMousePointerSizeNS 7
  • fmMousePointerSizeNWSE 8
  • fmMousePointerSizeWE 9
  • fmMousePointerUpArrow 10
  • fmMousePointerHourglass 11
  • fmMousePointerNoDrop 12
  • fmMousePointerAppStarting 13
  • fmMousePointerHelp 14
  • fmMousePointerSizeAll 15
  • fmMousePointerCustom 99
  CommandButton1.MousePointer = fmMousePointerHelp

Picture

Nastavení obrázek na pozadí.

  CommandButton1.Picture = LoadPicture("c:\mujObrazek.bmp")

PicturePosition

Pozice obrázku relativně k titulku.

  • fmPicturePositionLeftTop - 0 - vlevo od titulku zarovnání s horním okrajem
  • fmPicturePositionLeftCenter - 1 -
  • fmPicturePositionLeftBottom - 2 -
  • fmPicturePositionRightTop - 3 -
  • fmPicturePositionRightCenter - 4 -
  • fmPicturePositionRightBottom - 5 -
  • fmPicturePositionAboveLeft - 6 -
  • fmPicturePositionAboveCenter - 7 -
  • fmPicturePositionAboveRight - 8 -
  • fmPicturePositionBelowLeft - 9 -
  • fmPicturePositionBelowCenter - 10 -
  • fmPicturePositionBelowRight - 11 -
  • fmPicturePositionCenter - 12 -
  CommandButton1.PicturePosition = fmPicturePositionLeftTop

TabIndex

Vrací nebo udává pozici jednoho objektu v pořadí karet formuláře.

  CommandButton1.TabIndex = 0

TabStop

Určuje, zda se může objekt stát aktivním, když na něj uživatel přejde klávesou tabelátor. Nabývá hodnot TRUE, FALSE. True - Přístup TAB je možný (výchozí nastavení). False - Při použití tabelátoru se objekt vynechá.

  CommandButton1.TabStop = False

Tag

Doplňkové informace o objektu.

  CommandButton1.Tag = "office.lasakovi.com"

TakeFocusOnClick

Určuje, zda se ovládací prvek stane po klepnutí aktivním. Nebo vrací nastevenou vlastnost.

  • True - Po kliku se tlačítko stane aktivním (výchozí nastavení).
  • False - Po kliku se tlačítko nestane aktivním.
  CommandButton1.TakeFocusOnClick = False

Top

Umístění objektu od horní okraje. Nebo zjištění jak je umístěn objekt.

  CommandButton1.Top = 12
  umistenitop = CommandButton1.Top

Visible

Nastavuje viditelnost objektu, nebo zobrazuje jaký stav má objekt. Nabývá hodnot TRUE (viditelný - výchozí nastavení), FALSE (neviditelný).

  CommandButton1.Visible = False
  CommandButton1.Visible = True

Width

Vrací šířku objektu nebo jeho výšku nastaví.

  CommandButton1.Width = 110
  Sirka = CommandButton1.Width

WordWrap

Označuje, zda se obsah ovládacího prvku automaticky zalomi na konci řádku. Nabývá hodnot:

  • TRUE
  • FALSE
  CommandButton1.WordWrap = True

Ke stažení

Hotový příklad ke stažení: Formulář CommandButton (Tlačítko) - ukázky použití soubor ve formátu *.xls

MS Excel - formuláře - CommandButton (Tlačítko)

Závěr

Popis vlastnosti objektu CommandButton (Tlačítko) máme za sebou :)

Článek byl aktualizován: 01.11.2014 14:00

Odměna

Ušetřil vám tento web čas, peníze? Pomohl vyřešit problém? Jste ochotni poskytnout symbolickou odměnu na další rozvoj? Vybrte si formu odměny, která vám vyhovuje.


Pavel Lasák

Pavel Lasák - autor webu

Microsoft Office (Word, Excel, PowerPoint) se věnuji od roku 2006. Své vědomosti a zkušenosti dávám k dispozici na různých školeních a konzultacích, ale také na tomto webu. K dispozici na tomto webu je mnoho návodu, tipů a triků včetně desítek různých šablon.

   Pavel Lasák LinkedIn Profil    Pavel Lasák Google+ Profil    Pavel Lasák facebook Profil    Pavel Lasák twitter Profil

Doporučte tento článek přátelům

Pokud vám článek pomohl, případně si myslíte, že může pomoci i někomu dalšímu, budu rád když jej sdílením doporučíte přátelům - děkuji:



Komentáře


krikolubos

Přidáno: 29.06.12 12:43

Dobrý deň! Ako sa dá nastaviť veľkosť tlačítka comandbutton na veľkosť bunky do ktorej ho chcem umiestniť? s úctou Kríko krikolubos@gmail.com

Jan Polák

Přidáno: 05.11.12 10:21

V oddíle "(Name)" si, prosím, v odstavci "Pojmenování prvku (můžeme změnit). Ve kódech se pak budeme na tento prvek odkazovat jeho jedinečným názvem. V našem příkladě je (Name) OptionButton1." změňte poslední výraz na "CommandButton1". Díky.

Pavel Lasák

Přidáno: 05.11.12 17:46

To Jan Polák: Děkluji za info, opravil jsem.

Jan Ptáček

Přidáno: 13.03.13 14:24

Mám dotaz k převodu mezi Excel 2003 a Excel 2010. V Excel 2003 přidám na list CommandButton, ve VBA ho pojmenuji např. "Zpet" a vyberu akci pro Zpet_Click a zapíšu kód. Soubor otevřu v Excel 2010 v režimu kompatibility a vše funguje. Převedu jej funkcí do Excelu 2010 a následně tento prvek Active X přestane fungovat. V editoru VBA zjistím, že sice makro Zpet_Click zůstalo zachováno, ale ovládací prvek má defaultní jméno CommandButton1. Stačí do vlastností do Name zapsat Zpet a již vše funguje. Je něco špatně? Pokračuji dále. Takto opravený list v Excel 2010 chci otevřít v Excel 2003. Dostanu zprávu, že "Neinicializované prvky Active X nelze otevřít" a ovládací prvky jsou nefunkční, jako pouze namalované na sheetu. Kde je chyba? Děkuji

Honza

Přidáno: 14.03.14 15:49

Dobrý den, lze vybrat z Commandbutton1 až třeba Commandbutton8 podle toho indexu a pak třeba přiřadit Commandbutton5.backcolor=&H8000000A? S použitím Select je to trochu krkolomné. Děkuji

Lucia

Přidáno: 25.03.14 14:21

Dobrý deň, je možné nastaviť aby bolo tlačidlo vždy zobrazené na aktuálnom vrchu zobrazenej strany aj pri rolovaní v hárku nižšie? Teda, aby sa pri rolovaní po hárku presúvalo tak, aby bolo stále viditeľné užívateľovi? Ďakujem

Lukáš Melničák

Přidáno: 25.08.15 00:26

Dobrý den, pokud mám v jednom listě např. 10 tlačítek CommanButton. Pojmenované jsou CommandButton1 - CommandButton10. Každému tlačítku bych rád přiřadil při clicku funkci, která používá pro další výpočty právě to číslo za názvem CommandButton. Lze nějakým fíglem získat toto číslo v závislosti na tom, na které tlačítko uživatel clickne? Děkuji za odpověď lukas.melnicak@volny.cz

Jakub

Přidáno: 17.12.15 12:40

Dobrý den, dá se nějak nahradit část názvu tlačítka proměnnou? potřebuji něco jako: For i 1 To 100 ComBut(i).Caption = i Next i Aby byl výsledek stejný jako bych použil: ComBut1.Caption = "1" ComBut2.Caption = "2" ... ComBut100.Caption = "100" Což je jednak zdlouhavé a pokud potřebuji přidat nebo odebrat příkazy mezi For a Next tak bych to musel dělat vždy 100x což je veeeelmi zdlouhavé a pokud to nedělá co potřebuji, tak mě celý proces čeká znovu. Děkuji za jakoukoli radu

Jakub

Přidáno: 17.12.15 12:51

V článku by se dalo doplnit používání i pravého myšítka. Private Sub CommandButton1_MouseDown(ByVal Button As Integer, _ ByVal Shift As Integer, ByVal x As Single, ByVal y As Single) If Button = 1 Then MsgBox "Bylo stisknuto LEVÉ myšítko." End If If Button = 2 Then MsgBox "Bylo stisknuto PRAVÉ myšítko." End If End Sub Třeba se někomu bude hodit. Pozn.: 'Button = 3' by teoreticky mohlo být kolečko myši, ale nemám odzkoušeno.

Jakub

Přidáno: 17.12.15 13:08

Jak už to u mě bývá, ve chvíli, kdy položím dotaz, naleznu řešení. For i = 1 To 100 Me.Controls("ComBut" & i).Caption = i Next i Snad někomu přijde vhod :D







Sdílejte

Pomohl Vám návod?
Sdílejte na Facebooku, G+
LinkedIn...

Nové články

25.03.2017:
ROUNDUP, ROUNDDOWN - zaokrouhlování

07.04.2017:
Řazení Excel - bug - problém

09.04.2017:
Podmínkové funkce Excel - bug - problém


Newsletter

Přihlaste se odběru novinek a získejte:
Ebook zdarma -
10 kroků ke zvládnutí (Word, Excel, PowerPoint)
Šipka Kniha 3D Více o ebooku ...

TOPlist Licence Creative Commons webarchiv rss XML

Stránky o MS Office (Excel) produktu společnosti Microsoft. Neslouží jako technická podpora.
| Email na autora: pavel.lasak@gmail.com | Copyright © : Pavel Lasák 2004 - 2017 | 17946

Tento web zatím neprošel jazykovou korekturou. Beta verze redakčního systému.