» Poradna » Programy

Excel-dialog v makre - ako na to

 |   | 

Zdravím,

potreboval by som pri behu makra v Exceli, aby mi vyskočila rozhodovacia tabuľka s tlačítkami napr. MM, FX a Cancel. Ja by som potom kliknutím na príslušné tlačítko urobil príslušný úkon.
Ako to urobiť?
MsgBox, pokiaľ viem, zobrazuje len nejaké predvolené tlačíka ako Yes, No, Abort, Retry a pod., podobne je na tom InputBox. Ako by sa dalo urobiť, aby sa na tlačítkach zobrazil nápis, ako chcem ja?
Dík moc za každý užitočný tip.

Mohlo by vás také zajímat

Odpovědi na otázku

 |   | 

pouzit UserForm>CommandButton, kde si muzes nadefinovat vlastni text, font, barvu fontu a pozadi, tvar tlacitaka,... a vyhodnotit stisk tlacitka dle potreby

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Obávam sa, že CommandButton sa používa na liste (nie v makre), aj keď v konečnom dôsledku sa ním makro púšťa. Možno ale ako inšpirácia by to nebolo zlé...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Příklad: vytvoříš si UserForm, obsahující tři CommandButtons a jedno Label (skryté). Při stisku tlačítka se nastaví text v objektu Label (přes vlastnost Caption) a formulář se zavře. Kód pro ty tři tlačítka bude vypadat asi nějak takhle:

Private Sub CommandButton1_Click()
Label1.Caption = "1"
UserForm1.Hide
End Sub

Private Sub CommandButton2_Click()
Label1.Caption = "2"
UserForm1.Hide
End Sub

Private Sub CommandButton3_Click()
Label1.Caption = "3"
UserForm1.Hide
End Sub

V sešitu si vytvoříš normálně vlastní makro, které spustí ten UserForm, zjistí si text v tom Labelu a podle toho bude pokračovat, nějak takhle:

Sub dialog()
UserForm1.Show
text = UserForm1.Label1.Caption
if text="1" then ...
if text="2" then ...
if text="3" then ...
End Sub

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

neco k uziti UserForm je zde:
www.pcsvet.cz ...
www.pcsvet.cz ...
nebo
www.officir.ic.cz ...

Souhlasím  |  Nesouhlasím  |  Odpovědět
 |   | 

Dík moc.

Souhlasím  |  Nesouhlasím  |  Odpovědět

Související témata: Dialog, Úkon, Cancel