|  
                                             
	Hallo, 
	bei diesem Ansazu wird in die Zelle eine Funktion eingetragen: 
	z.B. wird aus 849368 die Funktion =ZEITWERT("0:8:49,368") 
	Dazu wird dieser Code verwendet: 
Private Sub Worksheet_Change(ByVal Target As Range)
    Dim lngValue As Long
    Dim lngMs As Long, lngSec As Long, lngMin As Long, lngHour As Long
    Dim rngTime As Range
    'Set rngtime = Range(ThisWorkbook.Names("Uhrzeiten").RefersTo)
        
    Set rngTime = Intersect(Range(ThisWorkbook.Names("Uhrzeiten").RefersTo), Target)
    
    If Not rngTime Is Nothing Then
        If IsNumeric(rngTime.Value) Then
            lngValue = rngTime.Value
            lngMs = lngValue - (Int(lngValue / 1000) * 1000)
            lngValue = (lngValue - lngMs) / 1000
            lngSec = lngValue - (Int(lngValue / 100) * 100)
            lngValue = (lngValue - lngSec) / 100
            lngMin = lngValue - (Int(lngValue / 100) * 100)
            lngValue = (lngValue - lngMin) / 100
            lngHour = lngValue
            Application.EnableEvents = False
            With rngTime
                .Formula = "=TimeValue(""" & lngHour & ":" & lngMin & ":" & lngSec & "," & lngMs & """)"
                .NumberFormat = "hh:mm:ss.000"
            End With
            Application.EnableEvents = True
        End If
    End If
End Sub
	In VBA gibt der Befehl TIMEVALUE einen Fehler  aus, wenn diesem die Zeit mit Millisekunden übergeben wird. 
	Als Ergebnis bekommt man eine Zeitangabe, mit der man weiterarbeiten kann. 
	Der Code muss im VBA-Editor dem entsprechenden Tabellenblatt zugewiesen werden. 
	LG, BigBen 
     |