• DİKKAT

    DOSYA İndirmek/Yüklemek için ÜCRETLİ ALTIN ÜYELİK Gereklidir!
    Altın Üyelik Hakkında Bilgi

Belirli tarih aralğında çalışan makro

Katılım
15 Temmuz 2012
Mesajlar
2,802
Excel Vers. ve Dili
Ofis 2021 TR 64 Bit
Merhaba, herkese hayırlı geceler.

Ekte gönderdiğim excel dosyamın P1 hücresinde belirlemiş olduğum tarih ve sonrası olan 3 gün içerisinde makronun çalışmasını istiyorum.
Diğer günlerde buton çalışmasın.

Butona bastığımda eğer sistem tarihi 02.07.2018 ile 05.07.2018 tarihleri arasında ise makroyu çalıştırsın, yoksa Bu makro 02.07.2018 ile 05.07.2018 tarihleri arasında çalışır şeklinde uyarı vermesini istiyorum.

Yani bu butonun yalnızca her yıl 02-05 Temmuz tarih aralığında çalışsın istiyorum. (Tarihler atmasyondur.)

Forumda ve internette aradım ancak bulamadım, yardımcı olur musunuz?
 

Ekli dosyalar

Deneyin...
Kod:
Sub Çalıştır()
tarih = CDate(Sheets("Sayfa1").Range("P1"))
sontarih = tarih + 3
If sontarih >= CDate(Date) Then
MsgBox "Merhaba Burada kodlar çalışır...."

Else

MsgBox "Bu makro " & tarih & " ile " & sontarih & "  tarihleri arasinda çalışır"
End If
End Sub
 
Sayın turist ilginiz için çok teşekkür ediyorum. Ellerinize sağlık kod gayet güzel çalışıyor tam istediğim gibi oldu.

Hayırlı geceler diliyorum.
 
Sayın turist kusura bakmayın rahatsız ediyorum.

P1 hücresindeki formül içerisine şuanki tarih haricinde eski tarih yazdığımda aşağıdaki mesaj ekrana geliyor, bu tamam güzel çalışıyor.
MsgBox "Bu makro " & tarih & " ile " & sontarih & " tarihleri arasında çalışır"


P1 hücresindeki formül içerisine şuanki tarihten ileriki tarih olarak 25.12.2018 yazdığımda aşağıdaki mesaj ekrana geliyor, burası hatalı.
MsgBox "Merhaba Burada kodlar çalışır...."

Yapmak istediğim P1 hücresine yazmış olduğum tarih ve bu tarihten 3 gün içerisinde kodların çalışması gerekiyor.
Diğer zamanlarda MsgBox "Bu makro " & tarih & " ile " & sontarih & " tarihleri arasında çalışır" bu mesaj gelsin.
 
Kod:
Sub Çalıştır()
tarih = CDate(Sheets("Sayfa1").Range("P1"))
sontarih = tarih + 3
If tarih = CDate(Date) Or tarih + 1 = CDate(Date) Or tarih + 2 = CDate(Date) Or tarih + 3 = CDate(Date) Then
MsgBox "Merhaba Burada kodlar çalisir...."

Else

MsgBox "Bu makro " & tarih & " ile " & sontarih & "  tarihleri arasında çalışır"
End If
End Sub
 
Sayın turist elleriniz dert görmesin, çok teşekkür ederim, tam istediğim gibi çalışıyor.

Hayırlı geceler diliyorum.
 
Teşekkür ederim.
 
Sayın turist tekrar rahatsız ediyorum.

Kodun kullanım süresini uzatmak istediğimde kod'da uzadı, kodu nasıl kısaltabiliriz?

Kod:
Sub Çalıştır()
tarih = CDate(Sheets("Sayfa1").Range("P1"))
sontarih = tarih + 15
If tarih = CDate(Date) Or _
tarih + 1 = CDate(Date) Or _
tarih + 2 = CDate(Date) Or _
tarih + 3 = CDate(Date) Or _
tarih + 4 = CDate(Date) Or _
tarih + 5 = CDate(Date) Or _
tarih + 6 = CDate(Date) Or _
tarih + 7 = CDate(Date) Or _
tarih + 8 = CDate(Date) Or _
tarih + 9 = CDate(Date) Or _
tarih + 10 = CDate(Date) Or _
tarih + 11 = CDate(Date) Or _
tarih + 12 = CDate(Date) Or _
tarih + 13 = CDate(Date) Or _
tarih + 14 = CDate(Date) Or _
tarih + 15 = CDate(Date) Then
MsgBox "Merhaba Burada kodlar çalisir...."

Else

MsgBox "Bu makro " & tarih & " ile " & sontarih & "  tarihleri arasında çalışır"
End If
End Sub
 
Kod:
Sub Çalıştır()
tarih = CDate(Sheets("Sayfa1").Range("P1"))
sontarih = tarih + 15
If tarih <= CDate(Date) And sontarih >= CDate(Date) Then
MsgBox "Merhaba Burada kodlar çalışır...."

Else

MsgBox "Bu makro " & tarih & " ile " & sontarih & "  tarihleri arasinda çalışı"
End If
End Sub
 
Sayın turist ellerinize sağlık, çok teşekkür ediyorum, yeni yeni ihtiyaçlar çıktığı için böyle parça parça soru sordum.
Kusura bakmayın gece gece rahatsız ettim.

Hayırlı çalışmalar, hayırlı sabahlar diliyorum.
 
Rica ederim, sağolun.
 
Geri
Üst