AW: Genau das ist es........
30.06.2017 20:21:30
Matthias
Moin! Hier ein angepasster Code. Habe ein wenig was geändert. Er springt jetzt immer auf die letzte gültige Eingabe zurück. Wie immer bitte mal prüfen. VG
Private Sub cboJD_Uebersichtbei_3_Change()
Dim eintrag()
Dim i As Long
Dim wert As String
Dim teil
If Me.cboJD_Uebersichtbei_3.Tag = "x" Then Exit Sub
eintrag = Array(0, 1, 1, ":", 1, 1, " ", "b", "i", "s", " ", 1, 1, ":", 1, 1)
wert = cboJD_Uebersichtbei_3.Value
If wert = "" Then Exit Sub
For i = 1 To Len(wert)
If Len(wert) > UBound(eintrag) Then
wert = Left(wert, UBound(eintrag))
Me.cboJD_Uebersichtbei_3.Tag = "x"
Me.cboJD_Uebersichtbei_3.Value = wert
Me.cboJD_Uebersichtbei_3.Tag = ""
End If
If Asc(Mid(wert, i, 1)) > 47 And Asc(Mid(wert, i, 1)) eintrag(i) Then
If Me.cboJD_Uebersichtbei_3.Tag "y" Then MsgBox "Bitte nur Werte wie " & Chr(10) & " _
00:00 bis 23:59" & Chr(10) & "eingeben.", , "Falsche Eingabe"
Me.cboJD_Uebersichtbei_3.Tag = "y"
cboJD_Uebersichtbei_3.Value = Left(wert, Len(wert) - 1)
Me.cboJD_Uebersichtbei_3.Tag = ""
Exit Sub
End If
Next i
End Sub