• DİKKAT

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

tarihten bir ay önce uyarsın

Katılım
24 Şubat 2009
Mesajlar
1,077
Excel Vers. ve Dili
2016
Merhaba arkadaşlar; Yaklaşık 100 adet aracımızın Sigorta günü için aşağıdaki kodu siteden aldım, ancak, bu kodla 1 ay öncesinden hatırlatmasını istiyorum, bu kod sadece günü gelince haber ediyor nasıl bir değişiklik yapabiliriz Herkese teşekkürler.
Kod:
Private Sub Workbook_Open()
On Error Resume Next
bulunan = ""
bul = Range("L3:L100").Find(Date).Row
If bul > 0 Then
With Range("L3:L100")
Set c = .Find(Date)
If Not c Is Nothing Then
firstAddress = c.Address
Do
bulunan = bulunan & Cells(c.Row, 2) & " Plakalı Aracın Son Sigorta tarihi ==> " & c.Text & Chr(13)
Set c = .FindNext(c)
Loop While Not c Is Nothing And c.Address <> firstAddress
End If
End With
MsgBox bulunan, vbInformation, "UYARI LİSTEDEKİ ARAÇLARIN SİGORTA DURUMU"
End If
End Sub
 
. . .

.Find(Date) satırlarında

Kod:
.Find(Date[COLOR="Blue"]-30[/COLOR])
yaparak deneyiniz.

. . .
 
Günaydın Hüseyin Bey;
.Find(Date-30)
Bu kodu ekledim çalışmadı, ayrıca normal gününde olan da olmadı. Teşekkürler.
 
. . .

Küçük bir örnek dosya eklerseniz üzerinde deneyebilirim.

. . .
 
. . .

Şu kodları deneyiniz.

Kod:
Sub kod()
    On Error Resume Next
    
    For i = 3 To Cells(Rows.Count, "B").End(3).Row
        bugün = CDbl(Date)
        fark = CDbl(Cells(i, "L")) - bugün
        
        If fark <= 30 Then
            
            If fark < 0 Then
                ek = "  gün geçmiştir."
            Else
                ek = "  gün kalmıştır."
            End If
            
            If fark = 0 Then ek = "  SON Gün."
            
            msj = Cells(i, "B") & "   Plakalı Aracın Sigortası " & vbTab & fark & vbTab & ek & Chr(10)
            ileti = ileti & msj
        
        End If
        
    Next i
    
    MsgBox ileti
    
End Sub

. . .
 
Hüseyin bey N sütununda Muayene ve P sütununda Ekzos var bunlar için aynı kodu nasıl uyarlarım. Bunlarıda mesajla almak istiyorum.
 
. . .

Önce sigorta > Muyene > Ekzos için sırayla ayrı ayrı uyarı vermesini isterseniz.
Koddaki fark = CDbl(Cells(i, "L")) - bugün sütun harfini değiştirerek çoğaltabilirsiniz.

. . .
 
Günaydın arkadaşlar; Hüseyin beyin hazırlamış olduğu aşağıdaki kodla Sigorta, Muayene ve Egzoz günlerini uyarı olarak alıyorum, kod;
Sub SİGORTA()
On Error Resume Next

For i = 3 To Cells(Rows.Count, "B").End(3).Row
bugün = CDbl(Date)

fark = CDbl(Cells(i, "L")) - bugün
' fark = CDbl(Cells(i, "N")) - bugün
' fark = CDbl(Cells(i, "P")) - bugün


If fark <= 30 Then

If fark < 0 Then
ek = " gün geçmiştir."
Else
ek = " gün kalmıştır."
End If

If fark = 0 Then ek = " SON Gün."

msj = Cells(i, "B") & " Plakalı Aracın SİGORTASINA" & vbTab & fark & vbTab & ek & Chr(10)
ileti = ileti & msj

End If



Next i

MsgBox ileti, vbInformation, "UYARI LİSTEDEKİ ARAÇLARIN SİGORTA DURUMU"

End Sub

Ekli dosyamda eğer Sigorta günü gelmemiş ise mesaj boş geçsin istiyorum, örnek dosyamda sigorta günü gelmemiş ancak mesaj da geliyor, bunu nasıl kaldırırım. Teşekkürler.
 

Ekli dosyalar

Arkadaşlar merhaba 12. Mesajdaki soruma bakabilir misiniz teşekkürler.
 
Geri
Üst