Çözüldü 2 Tarih Arası Gün Hesaplama ve Uyarı Verme

Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Herkese kolay gelsin,
Çalışma sayfamın (“A”) kolonunda çeşitli tarihler yer almakta ve (“B”) kolunda bu tarihlerin bana hatırlatılmasını istediğim tarihleri yazmaktayım. (“A”) kolonunda ki tarihlerin (“B”) kolonunda ki karşılığına gelen tarihlere 10 gün kala bana userformumun uyarı vermesini istiyorum(…… çalışmanızın 10 günlük süresi kalmıştır. Şeklinde)

Bu konuda yardımcı olursanız memnun kalırım saygılarımla.
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Örnek dosya paylaşma imkanınız varmı?
Eksiklik var; mesela C sütununda proje adı vs mi var? .... çalışmasından kasıt nedir.
Bu sütunda 10 günü kalan iş tekil mi, çoğul mu mesela?
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Kod:
Sub SureUyari()
    Dim sonSatir As Long
    Dim i As Long
    Dim hatirlatmaTarihi As Date
    Dim uyariMesaji As String
    
    sonSatir = Range("A" & Rows.Count).End(xlUp).Row
    
    For i = 1 To sonSatir
        If IsDate(Range("A" & i).Value) And IsDate(Range("B" & i).Value) Then
            hatirlatmaTarihi = Range("B" & i).Value - 10
            If hatirlatmaTarihi <= Range("A" & i).Value And Range("A" & i).Value <= Range("B" & i).Value Then
                uyariMesaji = uyariMesaji & vbNewLine & Format(Range("A" & i).Value, "dd.mm.yyyy")
            End If
        End If
    Next i
    
    If uyariMesaji <> "" Then
        uyariMesaji = "Aşağıdaki çalışmalarınızın 10 günlük süresi kalmıştır:" & vbNewLine & uyariMesaji
        MsgBox uyariMesaji
    End If
End Sub
 

Ekli dosyalar

Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Kod:
Sub SureUyari()
    Dim sonSatir As Long
    Dim i As Long
    Dim hatirlatmaTarihi As Date
    Dim uyariMesaji As String
   
    sonSatir = Range("A" & Rows.Count).End(xlUp).Row
   
    For i = 1 To sonSatir
        If IsDate(Range("A" & i).Value) And IsDate(Range("B" & i).Value) Then
            hatirlatmaTarihi = Range("B" & i).Value - 10
            If hatirlatmaTarihi <= Range("A" & i).Value And Range("A" & i).Value <= Range("B" & i).Value Then
                uyariMesaji = uyariMesaji & vbNewLine & Format(Range("A" & i).Value, "dd.mm.yyyy")
            End If
        End If
    Next i
   
    If uyariMesaji <> "" Then
        uyariMesaji = "Aşağıdaki çalışmalarınızın 10 günlük süresi kalmıştır:" & vbNewLine & uyariMesaji
        MsgBox uyariMesaji
    End If
End Sub
hocam tamda istediğim buydu teşekkür ederim
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Rica ederim kolay gelsin.
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Rica ederim kolay gelsin.
Kod:
hatirlatmaTarihi = Range("B" & i).Value - 10
hocam birşey sorucam sadece burda istediğim gun sayisini textbox araciliği ile verebilirmiyiz? textbox koymaya çalistim ama basarili olamadim malesef
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Nasıl yani anlayamadım
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Nasıl yani anlayamadım
Hocam
Kod:
hatirlatmaTarihi = Range("B" & i).Value - 10
bu kod blogunda bulunan "10" sayısını manuel olarak kod içerisinden değiştirmek yerine burasını textbox aracılığıyla istediğimiz sayıyı belirtebilirmiyiz
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Kod:
Sub TarihUyari()
    Dim sonSatir As Long
    Dim i As Long
    Dim hatirlatmaTarihi As Date
    Dim uyariMesaji As String
    Dim gunSayisi As Integer
    Dim uyariVar As Boolean
    
    gunSayisi = InputBox("Lütfen kaç gün kala uyarı verilmesini istediğinizi girin:")
    
    If gunSayisi < 1 Then
        MsgBox "Lütfen 1'den büyük bir sayı girin."
        Exit Sub
    End If
    
    sonSatir = Range("A" & Rows.Count).End(xlUp).Row
    
    For i = 1 To sonSatir
        If IsDate(Range("A" & i).Value) And IsDate(Range("B" & i).Value) Then
            hatirlatmaTarihi = Range("B" & i).Value - gunSayisi
            If hatirlatmaTarihi <= Range("A" & i).Value And Range("A" & i).Value <= Range("B" & i).Value Then
                uyariMesaji = uyariMesaji & vbNewLine & Format(Range("A" & i).Value, "dd.mm.yyyy")
                uyariVar = True
            End If
        End If
    Next i
    
    If uyariVar Then
        uyariMesaji = "Aşağıdaki çalışmalarınızın " & gunSayisi & " günlük süresi kalmıştır:" & vbNewLine & uyariMesaji
        MsgBox uyariMesaji
    Else
        MsgBox "Seçtiğiniz süreye uygun bir hatırlatma tarihi yok."
    End If
End Sub
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Kod:
Sub TarihUyari()
    Dim sonSatir As Long
    Dim i As Long
    Dim hatirlatmaTarihi As Date
    Dim uyariMesaji As String
    Dim gunSayisi As Integer
    Dim uyariVar As Boolean
   
    gunSayisi = InputBox("Lütfen kaç gün kala uyarı verilmesini istediğinizi girin:")
   
    If gunSayisi < 1 Then
        MsgBox "Lütfen 1'den büyük bir sayı girin."
        Exit Sub
    End If
   
    sonSatir = Range("A" & Rows.Count).End(xlUp).Row
   
    For i = 1 To sonSatir
        If IsDate(Range("A" & i).Value) And IsDate(Range("B" & i).Value) Then
            hatirlatmaTarihi = Range("B" & i).Value - gunSayisi
            If hatirlatmaTarihi <= Range("A" & i).Value And Range("A" & i).Value <= Range("B" & i).Value Then
                uyariMesaji = uyariMesaji & vbNewLine & Format(Range("A" & i).Value, "dd.mm.yyyy")
                uyariVar = True
            End If
        End If
    Next i
   
    If uyariVar Then
        uyariMesaji = "Aşağıdaki çalışmalarınızın " & gunSayisi & " günlük süresi kalmıştır:" & vbNewLine & uyariMesaji
        MsgBox uyariMesaji
    Else
        MsgBox "Seçtiğiniz süreye uygun bir hatırlatma tarihi yok."
    End If
End Sub
Teşekkür ederim hocam elinize sağlık
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Önemli değil kolay gelsin.
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Kod:
Sub TarihHatirlatici()
    Dim sonSatir As Long
    Dim i As Long
    Dim tarih As Date
    Dim hatirlatmaTarihi As Date
    Dim gunFarki As Integer
    Dim hatirlatmalar As String
    
    sonSatir = Cells(Rows.Count, 1).End(xlUp).Row
    
    For i = 2 To sonSatir
        tarih = Cells(i, 1).Value
        hatirlatmaTarihi = Cells(i, 2).Value
        gunFarki = DateDiff("d", tarih, hatirlatmaTarihi)
        
        If gunFarki <= 10 And gunFarki >= 0 Then
            hatirlatmalar = hatirlatmalar & gunFarki & " gün içinde süre doluyor!    : " & Cells(i, 1) & vbNewLine
        End If
    Next i
    
    If hatirlatmalar <> "" Then
        MsgBox hatirlatmalar
    End If
End Sub
 

Ekli dosyalar

Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Kod:
Sub TarihHatirlatici()
    Dim sonSatir As Long
    Dim i As Long
    Dim tarih As Date
    Dim hatirlatmaTarihi As Date
    Dim gunFarki As Integer
    Dim hatirlatmalar As String
   
    sonSatir = Cells(Rows.Count, 1).End(xlUp).Row
   
    For i = 2 To sonSatir
        tarih = Cells(i, 1).Value
        hatirlatmaTarihi = Cells(i, 2).Value
        gunFarki = DateDiff("d", tarih, hatirlatmaTarihi)
       
        If gunFarki <= 10 And gunFarki >= 0 Then
            hatirlatmalar = hatirlatmalar & gunFarki & " gün içinde süre doluyor!    : " & Cells(i, 1) & vbNewLine
        End If
    Next i
   
    If hatirlatmalar <> "" Then
        MsgBox hatirlatmalar
    End If
End Sub
Hocam bu kod çok güzel çalışıyor fakat bir sorum olucaktı tekrardan örnek vererek açıklamak gerekirse;
15.04.2023 tarihinde kayıtımı yaptım ve bu tarihten tam 1 yıl sonra yani 15.04.2024 yılına 45 gün kaldığında uyarı vermesini nasıl sağlayabilirim? Sizin vermiş olduğunuz kod aynı yıl içerisinde bulunan tarihler arasında istediğim kadar gün kaldığında uyarı veriyor fakat yuksrda vermiş olduğum örneğe göre uyarı vermiyoe malesef şimdiden teşekkürler cevabınız için
 

tahsinanarat

Altın Üye
Katılım
14 Mart 2005
Mesajlar
2,164
Excel Vers. ve Dili
Ofis 2019 Türkçe
Altın Üyelik Bitiş Tarihi
27-05-2028
Sn. @RBozkurt kalan gün sayılarını mesaj kutusunda değilde d sutununa yazdırmak istersek, kodda nasıl bir değişiklik yapmalıyız. Teşekkürler.
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Hocam bu kod çok güzel çalışıyor fakat bir sorum olucaktı tekrardan örnek vererek açıklamak gerekirse;
15.04.2023 tarihinde kayıtımı yaptım ve bu tarihten tam 1 yıl sonra yani 15.04.2024 yılına 45 gün kaldığında uyarı vermesini nasıl sağlayabilirim? Sizin vermiş olduğunuz kod aynı yıl içerisinde bulunan tarihler arasında istediğim kadar gün kaldığında uyarı veriyor fakat yuksrda vermiş olduğum örneğe göre uyarı vermiyoe malesef şimdiden teşekkürler cevabınız için
Sorum güncel
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
If gunFarki <= 10
Satırını
If gunFarki <= 45

Yaparsanız referans tarihten 45 gün önce uyarı verir.
 
Katılım
2 Mart 2018
Mesajlar
101
Excel Vers. ve Dili
excel 2016
Altın Üyelik Bitiş Tarihi
31-01-2024
Hp
If gunFarki <= 10
Satırını
If gunFarki <= 45

Yaparsanız referans tarihten 45 gün önce uyarı verir.
Hocam o şekilde veriyor sıkıntı yok ama verdiğim örnekte ki gibi “01.01.2023 yılının 01.01.2024 yılına” 45 gün kaldığında vermiyor malesef araya yıl değişikliği girdiğinde neden vermiyor anlayamadım
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
Tarihimiz 1 ocak 2023,
1 sene sonrası 1 ocak 2024

Uyarıyı hangi tarihte vermesi lazım onu anlayamadım. Siz uyarı verecek tarihi belirtin bi
 

RBozkurt

𐱅𐰇𐰼𐰚
Altın Üye
Katılım
10 Ocak 2018
Mesajlar
681
Excel Vers. ve Dili
Microsoft Office 2024
Google Sheets
Altın Üyelik Bitiş Tarihi
19-12-2026
1 ocak 2024 tarihine 45 gün kala mı uyarı vermesi lazım. 45 günün fonksiyonu nedir
 
Üst