Stoppuhr
04.11.2014 16:23:12
Stefan
meine Aufgabe ist es mit VBA ein Stoppuhr zu programmieren.
Die Stoppuhr soll nach einer zufällig gewählten Zeit ein optisches Signal ausgeben.
Ein Frühstart soll angezeigt werden.
Mein Problem ist, (glaub ich zumindest) dass ich während Application.OnTime keine Eingabe in das Programm einlesen kann und er deshalb die Fehlermeldung erst verspätet bringt.
Ich hatte auch mal noch ein akustisches Signal drin, welches allerdings viele Fehlerquellen mit sich gebracht hat, da er während der Tonausgabe nichts anderes gemacht hat.
Hat jemand eine Idee, wie ich die Fehlermeldung direkt nach einem "Frühstart" angezeigt bekomme?
Und eventuell eine Idee wie ich ein akustisches Signal rein bekomme?
Vielleicht fürs Verständnis:
die Messung wird dreimal hintereinander durchgeführt
zum Schluss wird der Mittelwert gebildet
Sub Reaktionstest()
Dim sek As Integer
Dim endzeit As Double
Dim reaktionszeit As Double
Dim i As Integer
Dim mittelwertzeit As Double
Dim werteins As Double
Dim wertzwei As Double
Dim wertdrei As Double
For i = 1 To 3
stopp = False
sek = ((6 - 2 + 1) * Rnd + 2)
Application.OnTime Now + sek / 86400, "Signalausgabe"
While stopp = False
DoEvents
Wend
endzeit = GetTime
reaktionszeit = (endzeit -startzeit) /1000
If reaktionszeit
Sub Signalausgabe()
UserForm5.Label23.BackColor = vbRed 'Visuelles Signal
startzeit = GetTime
If stopp = True Then
MsgBox "Frühstart", vbOKOnly + vbCritical, "Fehlermeldung"
End If
End Sub