Salut PC151,
une solution avec ON TIME qui ne permet malheureusement pas de déterminer un écart de moins d'une seconde.
Clic sur [C1] détermine le choix de la Lettre de départ ;
Clic sur [C2] augmente l'écart d'1 seconde ;
Clic droit sur [C2] diminue l'écart d'1 seconde ;
Clic sur [B2] démarre le défilement.
Public Sub Défilement()
'
Dim tData
'
If [D2] = "" Then
[D2] = Switch([C1] = "A", 11, [C1] = "B", 21, [C1] = "C", 31)
Application.OnTime Now + TimeValue("00:00:" & CStr([C2])), "Défilement"
Else
[D2] = [D2] + 1
iFlag = [D2] Mod 10
tData = IIf([D2] > 30, Array("", "C", "A", "B", "A", "C"), IIf([D2] > 20, Array("", "B", "C", "A", "C", "B"), Array("", "A", "B", "C", "B", "A")))
[C1] = CStr(tData(iFlag))
If iFlag < 5 Then
Application.OnTime Now + TimeValue("00:00:" & CStr([C2])), "Défilement"
Else
[D2] = ""
[B2] = "NO"
End If
End If
'
End Sub
A+