ich habe eine Multipage mit zwei Seiten. Auf der ersten Seite trage ich Informationen in TextBoxen ein um diese dann in eine Tabelle zu speichern. Hier lasse ich nur gültige Uhrzeiteingaben zu und das funktioniert auch klasse mit folgendem Code:
'Eingabebeschränkung der Uhrzeit mit automatischem Doppelpunkt(hh:mm)
Private Sub TextBox1_KeyPress(ByVal KeyAscii As MSForms.ReturnInteger)
Select Case Len(TextBox1)
Case 0
Select Case KeyAscii
Case 48 To 50
Case Else
KeyAscii = 0
End Select
Case 1
If Left(TextBox1, 1) = 2 Then
Select Case KeyAscii
Case 48 To 51
Case Else
KeyAscii = 0
End Select
Else
Select Case KeyAscii
Case 48 To 57
Case Else
KeyAscii = 0
End Select
End If
Case 2
Select Case KeyAscii
Case 48 To 53, 58
If KeyAscii 58 Then TextBox1 = TextBox1& ":"
Case Else
KeyAscii = 0
End Select
Case 3
If Right(TextBox1, 1) = ":" Then
Select Case KeyAscii
Case 48 To 53
Case Else
KeyAscii = 0
End Select
End If
Case 4
Select Case KeyAscii
Case 48 To 57
Case Else
KeyAscii = 0
End Select
Case Else
KeyAscii = 0
End Select
End Sub
Auf der zweiten Multipage Seite lese ich anhand der "Laufenden Nummer Spalte" in der Tabelle die Informationen wieder ein um diese bearbeiten zu können und zurückzuspeichern und da erscheint die Uhrzeit als z.B. 0,455534 usw. Wie verhindere ich dieses Format und zwinge Excel dazu mir die Uhrzeit, wie sie in der Tabelle steht, wiederzugeben? Die Spalte ist auf hh:mm formatiert.
Habe das schon mal mit Format festlegen bei Change versucht, aber dann konnte ich dir Uhrzeit nicht ändern, da Sie immer auf 00:00 springt.
Mein Code für die Multipage ist:
'Komplette Seite Eintrag editieren SeSys
Private Sub EintragEditieren_LfdNrTextbox_Change()
Dim varTMP As Variant
Tabelle1.Activate
On Error GoTo Fin
If Not Trim(EintragEditieren_LfdNrTextbox.Text) = "" Then
With Tabelle1
varTMP = Application.Match(CLng(EintragEditieren_LfdNrTextbox.Text), .Range("A:A"), _
0)
If Not IsError(varTMP) Then
Me.Tag = varTMP
EintragEditieren_DatumTextbox.Text = .Cells(varTMP, 2).Value
EintragEditieren_ZeitTextbox.Text = .Cells(varTMP, 3).Value
EintragEditieren_StichCombobox.Text = .Cells(varTMP, 4).Value,
Else
Me.Tag = ""
SeSys_EintragEditieren_DatumTextbox.Text = ""
SeSys_EintragEditieren_ZeitTextbox.Text = ""
SeSys_EintragEditieren_StichCombobox.Text = ""
End If
End With
Else
SeSys_EintragEditieren_DatumTextbox.Text = ""
SeSys_EintragEditieren_ZeitTextbox.Text = ""
SeSys_EintragEditieren_StichwortCombobox.Text = ""
End If
Fin:
If Err.Number 0 Then MsgBox "Fehler: " & _
Err.Number & " " & Err.Description
End Sub