Es gibt eine Lösung! Platzieren Sie diesen VBA-Code in Ihrem Arbeitsblattmodul, z. B.:
- Öffnen Sie den Visual Basic Editor (Alt-F11)
- Doppelklicken Sie in der Baumansicht oben links auf das Blatt, in das Sie Ihre Zeiten eingeben wollen
- Platzieren Sie im zentralen Code-Panel den untenstehenden Code.
- Schließen Sie VBE
Verwenden Sie diesen Code:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Value < 0 Or Target.Value > 1 And Target.NumberFormat <> "h:mm" Then Exit Sub
Application.EnableEvents = False
Target.Value = Target.Value / 60
Target.NumberFormat = "mm:ss"
Application.EnableEvents = True
End Sub
Falls Sie den Bereich, in den Sie die Daten eingeben, bereits formatiert haben, verwenden Sie stattdessen diese Zeile als erste Zeile:
If Target.Value < 0 Or Target.Value > 1 Then Exit Sub
Beachten Sie, dass dies den Wert und das Format ändert - jedes Mal, wenn Sie entweder eine Zeit eingeben - oder etwas, das zwischen 0 und 1 liegt! Wenn Sie es auf eine bestimmte Spalte beschränken wollen, fügen Sie diese Zeile hinzu:
If Target.Column <> 3 Then Exit Sub
oder diese Zeile, um es auf einen bestimmten Bereich zu beschränken
If Intersect(Target, Range("A2:A100") Is Nothing Then Exit Sub