Excel - spuštění makra při hodnotě buňky

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

Moderátor: Mods_senior

Odpovědět
ENeMy
nováček
Příspěvky: 5
Registrován: 02 čer 2013 10:33

Excel - spuštění makra při hodnotě buňky

Příspěvek od ENeMy »

Dobrý den,
potřeboval bych poradit, jakým způsobem se dá spustit makro. Potřebuji aby se makro A spustilo, když v buňce P3 bude 1, a když bude ve stejné buňce 0, tak aby se spustilo makro B. Něco jsem udělal, ale aktivuje se makro pokaždé, když se začnou přepočítávat vzorce.

Kód: Vybrat vše

Private Sub Worksheet_Calculate()
    Select Case Range("$AN$1")
    Case 0
        Call B
    Case 1
        Call A
    End Select
End Sub
cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: 02 bře 2011 19:12
Bydliště: Drsná Vysočina :D

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od cmuch »

Tak Calculate změň na Change.

Jinak v podmínce máš AN1 a ne P3.

Nebo můžeš použít makro jak tady v tom příspěvku viewtopic.php?f=35&t=105303&hilit=makro
ENeMy
nováček
Příspěvky: 5
Registrován: 02 čer 2013 10:33

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od ENeMy »

Když to změním na change, tak to vyhodí chybu. Compile error: Ambiguous name detected: Worksheet_Change
Mirdad69
Level 2
Level 2
Příspěvky: 219
Registrován: 01 čer 2012 15:38

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od Mirdad69 »

To vypadá, že tam máš v jednom listu 2 makra stejného názvu Worksheet_Change.
ENeMy
nováček
Příspěvky: 5
Registrován: 02 čer 2013 10:33

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od ENeMy »

Měl jsem tam 2, to druhé bylo

Kód: Vybrat vše

Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Address = "$P$3" Then
Call Zmena
End If
End Sub

A když jsem ho dal pryč, tak tam vyskočilo toto Obrázek
cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: 02 bře 2011 19:12
Bydliště: Drsná Vysočina :D

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od cmuch »

Aby to nevyskakovalo tak musí být název takto
Private Sub Worksheet_Change(ByVal Target As Range)
ENeMy
nováček
Příspěvky: 5
Registrován: 02 čer 2013 10:33

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od ENeMy »

Ještě mě napadlo, jestli makro nemůže vyvolat dotazové okno jestli opravdu chcete spustit makro.
cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: 02 bře 2011 19:12
Bydliště: Drsná Vysočina :D

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od cmuch »

Jakože vyskočí okno s dotazem zda se má vyvolané makro dokončit?
ENeMy
nováček
Příspěvky: 5
Registrován: 02 čer 2013 10:33

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od ENeMy »

Ano, přesně tak.
cmuch
Level 4.5
Level 4.5
Příspěvky: 1547
Registrován: 02 bře 2011 19:12
Bydliště: Drsná Vysočina :D

Re: Excel - spuštění makra při hodnotě buňky

Příspěvek od cmuch »

Takže asi tak

Kód: Vybrat vše

Sub DotazProPokracovani()

  If MsgBox("Pokračovat?", vbQuestion + vbYesNo + vbDefaultButton2) = vbYes Then
    MsgBox "Pokračuji."
  End If
End Sub
Odpovědět
  • Podobná témata
    Odpovědi
    Zobrazení
    Poslední příspěvek
  • Přechod z Excel 21 na Excel 24
    od Snekment » » v Kancelářské balíky
    2 Odpovědi
    14227 Zobrazení
    Poslední příspěvek od Snekment
  • Spuštění PC
    od Elbeckho » » v Problémy s hardwarem
    11 Odpovědi
    6326 Zobrazení
    Poslední příspěvek od Kminek
  • Chybová hláška your device ran into a problem and needs to restart při spuštění pc
    od nevim1050 » » v Vše ostatní (hw)
    7 Odpovědi
    10434 Zobrazení
    Poslední příspěvek od petr22
  • Pohoda a excel
    od brownwld » » v Kancelářské balíky
    1 Odpovědi
    7204 Zobrazení
    Poslední příspěvek od atari
  • Excel 2016 - vzorec kombinace podmínek
    od MK_Vs » » v Kancelářské balíky
    5 Odpovědi
    5965 Zobrazení
    Poslední příspěvek od lubo.

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