VBA Un timer une seconde tout simple
En VBA, il n'y a pas (du moins à ma connaissance) de composant Timer.
On peut en créer un très facilement.
Dans un module de feuille
Activer/ dés activer le timer : Placer un bouton sur Feuil1 et mettre le code...
Private Sub CommandButton1_Click() TimeOnOFF = Not TimeOnOFF If TimeOnOFF Then Smem = 0 Timer End If End Sub
Dans un module public
Public TimeOnOFF As Boolean Public Smem As Integer Sub Timer() Dim VV If TimeOnOFF Then 'Mettre code ici pour être exécuté toute les secondes Smem = Smem + 1 If Smem = 1 Then Sheets("feuil1").[C1] = Time ElseIf Smem = 2 Then 'Mettre code ici pour être exécuté toute les 2 secondes Sheets("feuil1").[C1] = Replace(Time, ":", " ") Smem = 0 Else Smem = 0 End If VV = TimeSerial(Hour(Time), Minute(Time), Second(Time) + 1) Application.OnTime VV, "timer", False End If End Sub
Remarque : La sub affiche l'heure avec/sans les deux points de séparation, pour éviter le mouvement du texte dans la cellule mettre la police à @Arial Unicode MS
Ce document intitulé « VBA Un timer une seconde tout simple » issu de Comment Ça Marche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.