Zeitberechnung in Millisekunden
18.12.2012 12:37:18
Albert
aus einem früheren Forumseintrag hab ich diesen Code gezogen, der wunderschön Millisekunden anzeigt.
Mein Problem, dass ich nicht nur eine Taste als Zwischenzeitmessung verwenden möchte, sondern sieben.
Hier der alte Code...
Private Sub startWatch()
resetWatch
bStop = False
dblT = Timer
Me.Shapes("shpStop").Visible = True
Me.Shapes("shpLap").Visible = True
Me.Shapes("shpStart").Visible = False
On Error Resume Next
Do
DoEvents
Range("D6") = (Timer - dblT) / 86400
DoEvents
Loop While bStop = False
End Sub
Private Sub stopWatch()
bStop = True
Rows(10).Insert
Range("B10:D10").Font.ColorIndex = 23
Range("B11:D11").Font.ColorIndex = 15
Range("B10") = "Endtime:"
Range("D10") = Range("D6")
Me.Shapes("shpReset").Visible = True
Me.Shapes("shpStop").Visible = False
Me.Shapes("shpLap").Visible = False
End Sub
Private Sub lap()
lngR = lngR + 1
Rows(10).Insert
Range("B10:D10").Font.ColorIndex = 23
Range("B11:D11").Font.ColorIndex = 15
Range("B10") = "Lap " & Format(lngR, "000") & ":"
Range("D10") = Range("D6")
End Sub
Private Sub resetWatch()
lngR = 0
Range("D6") = 0
With Range("B10:D" & Rows.Count)
.ClearContents
.Font.ColorIndex = 15
End With
Me.Shapes("shpStart").Visible = True
Me.Shapes("shpStop").Visible = False
Me.Shapes("shpLap").Visible = False
Me.Shapes("shpReset").Visible = False
End Sub
Wie muss ich den Code umbauen?
Ich möchte z.B. die erste Taste so aufbauen.
a. Schreibe mir in die Spalte F eine "1"
b. Schreibe mir in die Spalte D die bereits verstrichene Zeit
c. Schreibe mir die Zeitdifferenz zwischen Start und der verstrichenen Zeit (bzw. letzten Tastendruck)
Bisher hab ich es leider nicht geschafft, den obigen Code so zu trennen, dass es funktioniert. Vorallem weil mir das lngR + 1 immer einen Strich durch die Rechnung gemacht hat. Es soll der neue Wert nicht oben eingetragen werden (die vorangegangenen Zeiten werden nach unten geschoben), sondern es soll nach unten erweitert werden.
Dank & LG
Albert