Skip to main content

AccessTr.neT


String Tarih Formatında Mı Yazılmış

String Tarih Formatında Mı Yazılmış

#47
en son onu yazınca olur diye düşünmüştüm kusura bakmayın sizin kodu fonksiyon haline getirsek fonksiyona metin kutusu gönderip boolean sonuç alsak nasıl düzenlemek lazım
Private Function isTarih(metin0 As TextBox) As Boolean
On Error GoTo son
   
    With metin0
        If .Value = "" Then GoTo enson
            Dim tarih As Variant, trh As Date, eom As Long, deger As String

            .Value = Replace(.Value, " ", ".")
            .Value = Replace(.Value, "/", ".")
            tarih = Split(.Value, ".")
         
            If Len(tarih(0)) = 1 Then tarih(0) = "0" & tarih(0)
            If Len(tarih(1)) = 1 Then tarih(1) = "0" & tarih(1)
            deger = tarih(0) & "." & tarih(1) & "." & tarih(2)
         
            If Not deger Like "##.##.####" Then
                MsgBox "Tarih bilgisi ""gg.aa.yyyy"" şeklinde girilmelidir.", vbCritical, "HATA"
                .SetFocus
                GoTo var
            Else
         
                trh = DateSerial(tarih(2), tarih(1), 1)
                eom = Day(CLng(DateSerial(Year(trh), Month(trh) + 1, 1) - 1))
                If Val(tarih(0)) > eom Then
                    GoTo son
                    .SetFocus
                End If
                If tarih(1) > 12 Then
                  GoTo son
                  .SetFocus
            End If
        End If
   
        MsgBox "Tarih Format Dogru...", vbInformation, "Bilgi"
       
var:
    eom = Empty
    trh = Empty
    deger = Empty
    Erase tarih
    Exit Function

son:
    .SetFocus
    MsgBox "Hatali Tarih...", vbCritical, "Hata"
    Cancel = True
    Exit Function

enson:
    End With

End Function
Cevapla

Bir hesap oluşturun veya yorum yapmak için giriş yapın

Yorum yapmak için üye olmanız gerekiyor

ya da

Bu Konudaki Yorumlar
Cvp: String Tarih Formatında Mı Yazılmış - Yazar: accessman - 12/03/2020, 12:41
Task