20 Snyede bir çalışan makronun başka bir butonla durdurulması

Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Merhabalar

Excel üzerinden ip lere ping çeken bir düzen kurdum.

ve bu düzenekte bir butonada 20 snyede bir ping çekmesi için aşağıdaki kodu ekledim

Kod:
Application.OnTime Now + TimeValue("00:00:20"), "ping"
Bu kodla 20 saniyede bir ip lere ping çekip durumlarını kontrol ediyor.

çalışan görünce ben bir butonla bu makroyu durdurayım istiyorum. Yani 20 snyede bir ping atma işi dursun.

Öyle bir makro buton oluşturulması hususunda bilgi ve yardımlarınızı rica ederim

Teşekkürler

NOT: Konuyu baya araştırdım hatta bu forum üstündede 1-2 tane konu buldum ama o konular yarım kalmış. tam cevabı verilmemiş. o yüzden kendim ayrı bir konu açmak istedim.
 

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Yeni bir module açın

Modulün en üst satırına

Kod:
public Durdurulsunmu as boolean
yazın

Kod:
Application.OnTime Now + TimeValue("00:00:20"), "ping"
satırının bir üstüne

Kod:
if Durdurulsunmu then exit sub
yazın

yani şöyle olacak

Kod:
if Durdurulsunmu then exit sub
Application.OnTime Now + TimeValue("00:00:20"), "ping"
Durdur butonuna

Kod:
Durdurulsunmu = true
yazın

herhangi bir yerde

Kod:
Durdurulsunmu = false
kodunu çalıştırmadan artık ping atılan satır hiçbir şekilde çalışmayacaktır
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Modüle 2 oluşturdum ve içerisine şu kod düzeneğini yazdım ama olmuyor hatalar alıyorum

Kod:
Public Durdurulsunmu As Boolean

If Durdurulsunmu Then Exit Sub
Application.OnTime Now + TimeValue("00:00:20"), "time_ping"


Sub Stop_Ping()
Durdurulsunmu = True
End Sub

Durdurulsunmu = False
 
Son düzenleme:

Muzaffer Ali

Destek Ekibi
Destek Ekibi
Katılım
5 Haziran 2006
Mesajlar
6,167
Excel Vers. ve Dili
2019 Türkçe
Sayın Halit3'ün verdiği örnekleri inceleyin. :)
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Onlarıda inceledim. bir sürü örnek inceledim ekledim çalıştırdım bir türlü olmadı. :(
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Merhabalar

Aşağıdaki kod düzenini bir butona atadım. o butonla 20 saniyede bir çalıştırdığım makroyu durdurmuş oldum.

Bilgileriniz için teşekkür ederim.

Kod:
Sub ping_stop()

Application.OnTime Now + TimeValue("00:00:20"), "time_ping", , False

End Sub
 
Katılım
8 Eylül 2008
Mesajlar
950
Excel Vers. ve Dili
2016 İngilizce
Fakat yukarıdaki kod ile il basışta durduruyorum. sonra bir daha başlatıp durdurmak istersem hata veriyordu.

aşağıdaki şekilde revize ettim sorun düzeldi.

Kod:
Sub ping_stop()
On Error Resume Next
Application.OnTime Now + TimeValue("00:00:05"), "time_ping", , False


End Sub
 
Üst