AccessTr.neT
2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - Baskı Önizleme

+- AccessTr.neT (https://accesstr.net)
+-- Forum: Microsoft Access (https://accesstr.net/forum-microsoft-access.html)
+--- Forum: Access Cevaplanmış Soruları (https://accesstr.net/forum-access-cevaplanmis-sorulari.html)
+--- Konu Başlığı: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli (/konu-2-inci-girilen-tarih-bir-onceki-tarihe-esit-ve-kucuk-olursa-hata-vermeli.html)

Sayfalar: 1 2 3


RE: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - yturan - 24/03/2021

(24/03/2021, 12:10)atoykan yazdı: Kod ile zorlanıyorum derseniz formunuzda ilgili alanın geçerlilik kuralını ve geçerlilik metnini de kullanabilirsiniz.
Geçerlilik kuralı alanına [Senet Tarihi_2]>[Senet Tarihi_1] Geçerlilik Metni alanına da uyarı mesajınızı yazabilirsiniz.

Çok teşekkür ederim. Bu dediğiniz şekilde şekilde yapabiliyorum.


Re: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - berduş - 24/03/2021

@atoykan hocama ilaveten aşağıdaki kodlar da denenebilir
Kodlar altforma eklenecek
Private Sub Form_Open(Cancel As Integer)
Dim ctl As Control
For Each ctl In Me
    If ctl.Name Like "Senet Tarihi_*" Then ctl.OnExit = "=TrkKont([" & ctl.Name & "])"
Next ctl

End Sub

Function TrkKont(ByRef ctl As Control)
xCtlNum = Mid(ctl.Name, 14)
If xCtlNum > 1 Then
    If ctl.Value <= Controls("Senet Tarihi_" & xCtlNum - 1).Value Then
        MsgBox ctl.Value & " tarihi " & Controls("Senet Tarihi_" & xCtlNum - 1).Value & "tarihinden küçük/eşit olamaz"
        ctl.Value = Null
        ctl.SetFocus
    End If
End If

If xCtlNum < 10 Then
    If ctl.Value >= Controls("Senet Tarihi_" & xCtlNum + 1).Value Then
        MsgBox ctl.Value & " tarihi " & Controls("Senet Tarihi_" & xCtlNum + 1).Value & "tarihinden büyük/eşit olamaz"
        ctl.Value = Null
        ctl.SetFocus
    End If
End If

End Function



RE: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - yturan - 24/03/2021

(24/03/2021, 12:56)berduş yazdı: @atoykan hocama ilaveten aşağıdaki kodlar da denenebilir
Kodlar altforma eklenecek
Private Sub Form_Open(Cancel As Integer)
Dim ctl As Control
For Each ctl In Me
    If ctl.Name Like "Senet Tarihi_*" Then ctl.OnExit = "=TrkKont([" & ctl.Name & "])"
Next ctl

End Sub

Function TrkKont(ByRef ctl As Control)
xCtlNum = Mid(ctl.Name, 14)
If xCtlNum > 1 Then
    If ctl.Value <= Controls("Senet Tarihi_" & xCtlNum - 1).Value Then
        MsgBox ctl.Value & " tarihi " & Controls("Senet Tarihi_" & xCtlNum - 1).Value & "tarihinden küçük/eşit olamaz"
        ctl.Value = Null
        ctl.SetFocus
    End If
End If

If xCtlNum < 10 Then
    If ctl.Value >= Controls("Senet Tarihi_" & xCtlNum + 1).Value Then
        MsgBox ctl.Value & " tarihi " & Controls("Senet Tarihi_" & xCtlNum + 1).Value & "tarihinden büyük/eşit olamaz"
        ctl.Value = Null
        ctl.SetFocus
    End If
End If

End Function

BU KODLARI nereye yazacam hocam?


RE: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - berduş - 24/03/2021

Mesajın 2. satirinda yaziyor aslında)
Alt formunuzu tasarım modunda açıp oraya eklemelisiniz


RE: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - yturan - 24/03/2021

(24/03/2021, 14:23)berduş yazdı: Mesajın 2. satirinda yaziyor aslında)
Alt formunuzu tasarım modunda açıp oraya eklemelisiniz

Berduş hocam Alt Formun "Yüklendiğinde" Olay Yordamına mı?


RE: 2'inci Girilen Tarih, Bir Önceki Tarihe Eşit Ve Küçük Olursa Hata Vermeli - berduş - 24/03/2021

Alt formda yanılmıyorsam form_open olayı yoktu
Siz sadece her 2 kod bloğunu kopyalayıp Vba penceresinin en altına ekleyin

kod sayfasındaki son satırın hemen altına