Microsoft Excel

Excel und VBA: Formeln, Programmierung, Lösungen

Die Excel/VBA-Beispiele

Thema

Eingabeerleichterung bei Datumseingaben

Gruppe

Change

Problem

Wie kann ich Datumseingaben im Format TTMMJJ tätigen und Excel zur Umwandlung ins Format TT.MM.JJ veranlassen?

Lösung
Geben Sie den Ereigniscode in das Klassenmodul des Arbeitsblattes ein.

ClassModule: Tabelle2

Private Sub Worksheet_Change(ByVal Target As Range)
   Dim vTxt As Variant
   If Target.Column <> 1 Then Exit Sub
   If Len(CStr(CDbl(Target.Value))) < 5 Then Exit Sub
   If Not IsDate(Target.Value) Then Exit Sub
   vTxt = CStr(CDbl(Target.Value))
   If Len(vTxt) = 5 Then vTxt = "0" & vTxt
   vTxt = DateSerial(Right(vTxt, 2), Mid(vTxt, 3, 2), Left(vTxt, 2))
   On Error GoTo ERRORHANDLER
   Application.EnableEvents = False
   Target.Value = vTxt
ERRORHANDLER:
   Application.EnableEvents = True
End Sub