Stránka 1 z 1
					
				Excel zastavení makra
				Napsal: 09 lis 2016 14:24
				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 UpdateKó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 
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 14:31
				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.
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 14:51
				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
 
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 15:41
				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
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 15:51
				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.
 
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 16:05
				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.
			 
			
					
				Re: Excel zastavení makra
				Napsal: 09 lis 2016 16:40
				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