Makroyu Verilen Süre Kadar Sonra Çalıştır - Microsoft Excel


Bazen bir makroyu belli bir saatte ya da belli bir süre geçtikten sonra (ki aslında bu da bir zamana tekabül ediyor) çalıştırmak isteyebiliriz. Bunun için yapabileceklerimize bakalım.

Kod


Option Explicit

Sub CalistirilacakMakro()
    MsgBox "Merhaba. Bu bir hatırlatıcıdır."
End Sub

Sub BelliBirSureGectiktenSonraMakroyuCalistir()
    Application.OnTime Now + TimeValue("00:00:03"), "CalistirilacakMakro"
End Sub

Kod (Açıklamalı)


Option Explicit

'--------------------------------------------------
'Belli bir süre geçtikten sonra çalışmasını istediğimiz
'kod parçalarını makro (procedure) olarak ayarladık.
'--------------------------------------------------
Sub CalistirilacakMakro()
    MsgBox "Merhaba. Bu bir hatırlatıcıdır."
End Sub

Sub BelliBirSureGectiktenSonraMakroyuCalistir()
    '--------------------------------------------------
    'Burada olayımız şu:
    'Makro "belli bir süre geçtikten sonra" çalışsın.
    'Yani, 5 saniye sonra 2 dakika sonra, 3 saat sonra,
    '7 saat, 22 dakika, 35 saniye sonra vs.
    'Şimdi bunun nasıl belirlendiğine bakalım.
    '
    'Makronun örneğin 3 saniye sonra çalışabilmesini
    'sağlamak için şimdiki zamanı dinamik olarak
    'belirleyebilmek gerekiyor. Bunu Now ile yapıyoruz.
    '
    'Şimdiki zamanı bulduktan sonra da üzerine ekleme
    'yapmamız gerekiyor. Bunu da TimeValue ile hallettik.
    '
    'Now + TimeValue("00:00:03") ile ilk parametreyi
    'belirledik, yani makronun 3 saniye sonra çalışmasını
    'istediğimizi belirttik.
    '
    'İkinci parametreye de 3 saniye sonra çalışması
    'için ayarladığımız makronun ismini string
    'ifade gibi yazıyoruz.
    '--------------------------------------------------
    Application.OnTime Now + TimeValue("00:00:03"), "CalistirilacakMakro"
End Sub

Etiketler
microsoft excel açıklamalı içerik microsoft excel vba