Excel zastavení makra

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

Moderátor: Mods_senior

Odpovědět
Diesels
nováček
Příspěvky: 49
Registrován: 31 črc 2010 13:56

Excel zastavení makra

Příspěvek od Diesels »

Dobrý den,

Mám dva tlačítka jedno pro spuštění makra kvůli aktualizaci dat v určitém časovém intervalu. Můj dotaz se týká druhého tlačítka, které by mělo tuto aktualizaci zastavit. Bohužel se mi to nedaří zprovoznit.
Doposud jsem to řešil pomocí CTRL+BREAK.

Tlačítko Update

Kód: Vybrat vše

Private Sub CommandButton1_Click()
'refresh
ActiveWorkbook.RefreshAll

alertTime = Now + TimeValue("00:00:30") 'hh:mm:ss
    Application.OnTime alertTime, "Refresh"
End Sub
Tlačítko pro ukončení Aktualizace:

Kód: Vybrat vše

Private Sub CommandButton2_Click()
  ???
End Sub
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Excel zastavení makra

Příspěvek od atari »

Tomu nerozumím. Pokud spustíš ve VBA příkaz, tak ho musíš nechat doběhnout. Zastavit můžeš pouze další běh kodu po skončení nějakého příkazu. CTRL BREAK je násilné zastavení, které může způsobovat nekonzistentnost dat.
Diesels
nováček
Příspěvky: 49
Registrován: 31 črc 2010 13:56

Re: Excel zastavení makra

Příspěvek od Diesels »

atari píše:Tomu nerozumím. Pokud spustíš ve VBA příkaz, tak ho musíš nechat doběhnout. Zastavit můžeš pouze další běh kodu po skončení nějakého příkazu. CTRL BREAK je násilné zastavení, které může způsobovat nekonzistentnost dat.
Ano, ale vzhledem k výše uvedenému makru pro aktualizaci, které se neustále opakuje, ten konec není...

Napadlo mě přidat do makra pro spuštění aktualizace něco ve smyslu If Range("a1").value = "stop" Then zastavení aktualizace/dokončení marka

Do Buňky A1 bych pomocí tlačítka pro zastavení vložil hodnotu "stop"....

Ale nedařilo se mi to zprovoznit
petr22
Guru Level 15
Guru Level 15
Příspěvky: 55065
Registrován: 06 úno 2012 10:27

Re: Excel zastavení makra

Příspěvek od petr22 »

1. zalozit klic v registru, kde bude napr pouze 0 nebo 1, pricemz 1 znamena ze to ma bezet a nula ze se to ma zastavit

2. spustene makro zapise na zacatku 1, nacita data a pri kazdem cyklu kontroluje jestli je tam 1

3. druhe tlacitko zapise 0, takze makro dokonci cyklus a zastavi se, o cemz da hlasku uzivateli
Uživatelský avatar
atari
Level 6
Level 6
Příspěvky: 3377
Registrován: 24 říj 2008 19:50

Re: Excel zastavení makra

Příspěvek od atari »

V tom případě máš špatně napsané zadání. Ty nechceš zastavovat makro, ale měnit podmínky kdy se má spustit refreš.
Zadat hodnotu je velmi jednoduché:

Kód: Vybrat vše

Private Sub CommandButton2_Click()
Range("a1") = "stop"
End Sub
Dodatečně přidáno po 2 minutách 36 vteřinách:
Udělat to přes ty registry je elegantnější, než ten "STOP" v buňce A1.
guest

Re: Excel zastavení makra

Příspěvek od guest »

Možná by stačilo podívat se do nápovědy, jak zrušit časové nastavení makra přes OnTime...

Násilně zastavit již běžící makro je hloupost.
Diesels
nováček
Příspěvky: 49
Registrován: 31 črc 2010 13:56

Re: Excel zastavení makra

Příspěvek od Diesels »

xlnc píše:Možná by stačilo podívat se do nápovědy, jak zrušit časové nastavení makra přes OnTime...

Násilně zastavit již běžící makro je hloupost.
Vyřešeno pomocí "Application.OnTime TimeToRun" funkce....

Děkuji
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
    14481 Zobrazení
    Poslední příspěvek od Snekment
  • Pohoda a excel
    od brownwld » » v Kancelářské balíky
    1 Odpovědi
    7405 Zobrazení
    Poslední příspěvek od atari
  • Excel 2016 - vzorec kombinace podmínek
    od MK_Vs » » v Kancelářské balíky
    5 Odpovědi
    6197 Zobrazení
    Poslední příspěvek od lubo.
  • Tisk sloupců vedle sebe na A4 - Excel
    od atari » » v Kancelářské balíky
    5 Odpovědi
    5985 Zobrazení
    Poslední příspěvek od atari

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