Makro v Excelu

Programy pro práci v kanceláři (Word, Excel, Access…=>Office)

Moderátor: Mods_senior

Odpovědět
ondra030
nováček
Příspěvky: 1
Registrován: 27 dub 2017 14:50

Makro v Excelu

Příspěvek od ondra030 »

Nazdar,

potřeboval bych pomoct. Potřebuji makro, které se zapne, při změně buňky a přitom podle dané hodnoty buňky. Příklad: v buňce např. C1 napíšu A ,tak se mi zapne makro s názvem A, pokud v buňce bude B ,zapne se mi makro s názvem B.

Předem díky za pomoc.

Ondra
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Makro v Excelu

Příspěvek od atari »

Kód vlož do Listu.
Toto jsou základy VBA a zde je to hezky popsáno: http://office.lasakovi.com/excel/vba-li ... excel-vba/

Kód: Vybrat vše

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value = "A" Then Call Makro_A
If Target.Value = "B" Then Call Makro_B
End Sub
guest

Re: Makro v Excelu

Příspěvek od guest »

Modul daného listu:

Kód: Vybrat vše

Private Sub Worksheet_Change(ByVal Target As Range)

    'je menenou bunkou C1?
    If Target.Address(False, False) = "C1" Then

        'spustit makro s nazvem dle obsahu bunky
        Application.Run Target.Text

    End If

End Sub
Application.Run je v tomto flexibilnější než Call.
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Makro v Excelu

Příspěvek od atari »

Ano to je pravda. Ale v případě že v buňce bude jiný obsah, než je název makra, tak to hodí chybu, což je potřeba ošetřit.
guest

Re: Makro v Excelu

Příspěvek od guest »

Já tu ale blbovzdornost neřeším. Ostatně to bych měl výhrady i k samotnému nápadu a zadání.
Odpovědět

Zpět na „Kancelářské balíky“