Supportnet / Forum / Tabellenkalkulation
Datums- und Uhrzeiteingabe vereinfachen
Frage
Hallo,
gibt es eine Möglichkeit, die Datums- und Uhrzeiteingabe in Excel zu vereinfachen?
Am liebsten wäre mir, wenn man die Punkte beim Datum bzw. den Doppelpunkt bei der Uhrzeit nicht mit eintippen müsste. In Access geht das ja.
Habe die Felder schon als Uhrzeit bzw. Datum formatiert. Die Punkte oder Doppelpunkte muss man aber ja trotzdem eingeben.
Gruß
Antwort 1 von nighty
hi all :-)
ein beispiel fuer die uhrzeit :-))
gruss nighty
einzufuegen alt f11/projektexplorer/DeineTabelle
Private Sub worksheet_Change(ByVal Target As Range)
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End Sub
ein beispiel fuer die uhrzeit :-))
gruss nighty
einzufuegen alt f11/projektexplorer/DeineTabelle
Private Sub worksheet_Change(ByVal Target As Range)
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End Sub
Antwort 2 von gone2fast
Danke nighty,
aber mit Visual Basic kenn ich mich überhaupt nicht aus. Ich versteh da jetzt (fast) nur Bahnhof.
Wenn ich da jetzt in diesem Projektexplorer bin und auf meiner Tabelle, wie geh ich dann genau weiter vor?
Gruß
aber mit Visual Basic kenn ich mich überhaupt nicht aus. Ich versteh da jetzt (fast) nur Bahnhof.
Wenn ich da jetzt in diesem Projektexplorer bin und auf meiner Tabelle, wie geh ich dann genau weiter vor?
Gruß
Antwort 3 von nighty
hi all :)
im projektexplorer werden deine tabellen angezeigt,fuege den code dort ein nach doppelclick auf deine ausgewählte tabelle,dann ist in dieser der automatismus :-)
gruss nighty
im projektexplorer werden deine tabellen angezeigt,fuege den code dort ein nach doppelclick auf deine ausgewählte tabelle,dann ist in dieser der automatismus :-)
gruss nighty
Antwort 4 von Hajo_Zi
Hallo Namensloser,
falls es darum geht diese Eingaben mit der Numlock-Tastatur zu machen?
Uhrzeit
die für mich einfachste Art zur Zeiteingabe ist.
Stelle bei Autokorrektur ein Ersetzen ,, durch : dann kannst Du Zeiten recht schnell mit der Num-Lock-Tastatur eingeben.
Datum schreibe 12/01/07 oder 12-01-07
Gruß Hajo
falls es darum geht diese Eingaben mit der Numlock-Tastatur zu machen?
Uhrzeit
die für mich einfachste Art zur Zeiteingabe ist.
Stelle bei Autokorrektur ein Ersetzen ,, durch : dann kannst Du Zeiten recht schnell mit der Num-Lock-Tastatur eingeben.
Datum schreibe 12/01/07 oder 12-01-07
Gruß Hajo
Antwort 5 von Ralfman
Eingeben von Datum ist einfach, halt mal die Strg fest und Tipp auf den Punkt (Strg + .)
Ralf
Ralf
Antwort 6 von gone2fast
nighty,
deine Lösung ist eigentlich super!
Aber jetzt kann ich ja keine Zahl mit 4 Stellen oder weniger mehr eingeben, ohne dass Excel mir eine Uhrzeit daraus macht. :-)
Kann man das ganze nicht auf eine bestimmte Spalte bzw. Spalten beschränken? Oder auf Felder mit einer bestimmten Formatierung?
Gruß, Marc
deine Lösung ist eigentlich super!
Aber jetzt kann ich ja keine Zahl mit 4 Stellen oder weniger mehr eingeben, ohne dass Excel mir eine Uhrzeit daraus macht. :-)
Kann man das ganze nicht auf eine bestimmte Spalte bzw. Spalten beschränken? Oder auf Felder mit einer bestimmten Formatierung?
Gruß, Marc
Antwort 7 von nighty
hi all :)
gruss nighty
spaltenbezogen
spalte 1 bzw a zur zeit
Private Sub worksheet_Change(ByVal Target As Range)
rem hier die spaltenangabe
If Target.Column = 1 Then
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End If
End Sub
oder bereichsbezogen
in diesem beispiel
zeile 5 spalten 2-9
Private Sub worksheet_Change(ByVal Target As Range)
rem hier die bereichsangaben
If Target.Column > 1 And Target.Column < 10 _
And Target.Row > 4 And Target.Row < 6 Then
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End If
End Sub
gruss nighty
spaltenbezogen
spalte 1 bzw a zur zeit
Private Sub worksheet_Change(ByVal Target As Range)
rem hier die spaltenangabe
If Target.Column = 1 Then
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End If
End Sub
oder bereichsbezogen
in diesem beispiel
zeile 5 spalten 2-9
Private Sub worksheet_Change(ByVal Target As Range)
rem hier die bereichsangaben
If Target.Column > 1 And Target.Column < 10 _
And Target.Row > 4 And Target.Row < 6 Then
On Error GoTo fehler
Application.EnableEvents = False
With Worksheet
If Len(Target.Value) = 1 Then Target.Value = "00" & ":0" & Mid$(Target.Value, 1, 1)
If Len(Target.Value) = 2 Then Target.Value = "00" & ":" & Mid$(Target.Value, 1, 2)
If Len(Target.Value) = 3 Then Target.Value = Mid$(Target.Value, 1, 1) & ":" & Mid$(Target.Value, 2, 2)
If Len(Target.Value) = 4 Then Target.Value = Mid$(Target.Value, 1, 2) & ":" & Mid$(Target.Value, 3, 2)
End With
Application.EnableEvents = True
End
fehler:
If Application.EnableEvents = False Then Application.EnableEvents = True
End If
End Sub
Antwort 8 von nighty
hi all :-)
noch das
gruss nighty
waere spalte 1 und 7
If Target.Column = 1 or Target.Column =7 Then
waere spalte 1 bis 7
If Target.Column <8 Then
waere spalte 6 bis 7
If Target.Column >5 and Target.Column <8 Then
das duerfte stoff zum experimentieren geben :-)
noch das
gruss nighty
waere spalte 1 und 7
If Target.Column = 1 or Target.Column =7 Then
waere spalte 1 bis 7
If Target.Column <8 Then
waere spalte 6 bis 7
If Target.Column >5 and Target.Column <8 Then
das duerfte stoff zum experimentieren geben :-)
Antwort 9 von gone2fast
Danke nighty,
das ist super und damit sollte ich klarkommen. Werd gleich mal etwas herumexperimentieren.
Wenn du mir das ganze jetzt noch für die Datumseingabe im Format T.M. (also z.B. 1.2.) bzw. TT.MM (also z.B. 14.10.) basteln könntest wäre das spitzenmäßig.
Finde das übrigens super, das einem hier so nett weitergeholfen wird. Danke dafür.
Gruß, Marc
das ist super und damit sollte ich klarkommen. Werd gleich mal etwas herumexperimentieren.
Wenn du mir das ganze jetzt noch für die Datumseingabe im Format T.M. (also z.B. 1.2.) bzw. TT.MM (also z.B. 14.10.) basteln könntest wäre das spitzenmäßig.
Finde das übrigens super, das einem hier so nett weitergeholfen wird. Danke dafür.
Gruß, Marc