Datumsgrenze 31.12.2029 und 01.01.2030
05.05.2020 16:35:58
Edwin
ich habe ein Textfeld in das ich ein Datum eingebe.
Ich möchte mir die Eingabe so leicht wie möglich machen und auch über die Tastatureingabe ermöglichen.
Deshalb wandle ich / und Komma in einen Punkt um.
Private Sub txtAblauf_Change()
txtAblauf = Replace(txtAblauf, ",", ".")
txtAblauf = Replace(txtAblauf, "/", ".")
If IsNumeric(txtAblauf) And Len(txtAblauf) = 6 And InStr(txtAblauf, ".") = 0 Then _
txtAblauf = Left(txtAblauf, 2) & "." & Mid(txtAblauf, 3, 2) & "." & Right(txtAblauf, 2)
End Sub
Private Sub txtAblauf_Exit(ByVal Cancel As MSForms.ReturnBoolean)
If txtAblauf "" Then
If Not IsDate(txtAblauf) Then
txtAblauf = ""
MsgBox "Kein gültiges Datum!"
Cancel = True
txtAblauf.SetFocus
Exit Sub
End If
End If
txtAblauf = Format(txtAblauf, "dd.mm.yyyy")
End Sub
Außerdem möchte ich die Eingabe auf zweistellige Zahlen begrenzen.Das Jahr wird immer im 2. Jahrtausend sein.
Wenn ich 01.01.99 eingebe, dann wird daraus 01.01.1999. Ab 01.01.00 wird daraus 01.01.2000 bis zum 31.12.29 31.12.2029.
Ab dem 01.01.30 wird daraus aber wieder 01.01.1930. Ich möchte aber, dass das Datum in diesem Datumsfeld immer im 2. Jahrtausend ist, also dass daraus 01.01.2030 wird.
Wie bekomme ich das hin?
Viele Grüße
Edwin