AW: Datumseingabe vereinfachen
06.07.2008 10:30:14
Tino
Hallo,
kommt in das entsprechende Tabellenblatt als Code.
Wirkungsbereich habe ich im Beispiel auf die Spalte A gesetzt.
Mögliche Eingabeformate für 08.05.2008
80508
080508
08052008
Also der Monat muss immer zweistellig sein.
Private Sub Worksheet_Change(ByVal Target As Range)
Dim MekZellSt As String
Target.NumberFormat = "General"
If Intersect(Target, Range("A:A")) Is Nothing Or (InStr(Target, ".") > 0) Then Exit Sub
Application.EnableEvents = False
If Len(Target) = 5 Then
Target = _
CDate(Format(CDate(Mid(Target, 1, 1) & "." & _
Mid(Target, 2, 2) & "." & _
Mid(Target, 4, 2)), "dd.mm.yyyy"))
ElseIf Len(Target) = 6 Then
Target = _
CDate(Format(CDate(Mid(Target, 1, 2) & "." & _
Mid(Target, 3, 2) & "." & _
Mid(Target, 5, 2)), "dd.mm.yyyy"))
ElseIf Len(Target) = 7 Then
Target = _
CDate(Format(CDate(Mid(Target, 1, 1) & "." & _
Mid(Target, 2, 2) & "." & _
Mid(Target, 4, 4)), "dd.mm.yyyy"))
ElseIf Len(Target) = 8 Then
Target = _
CDate(Format(CDate(Mid(Target, 1, 2) & "." & _
Mid(Target, 3, 2) & "." & _
Mid(Target, 5, 4)), "dd.mm.yyyy"))
End If
Application.EnableEvents = True
End Sub
Gruß Tino
www.VBA-Excel.de