Menu
Donnez votre avis

VBA Un timer une seconde tout simple

Posez votre question

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
Jean-François Pillou

Cet article est régulièrement mis à jour par des experts sous la direction de Jean-François Pillou, fondateur de CommentCaMarche et directeur délégué au développement numérique du groupe Figaro.

En savoir plus sur l'équipe CCM

A voir également

Publié par lermite222. Dernière mise à jour le 24 octobre 2018 à 08:44 par pijaku.

Ce document intitulé «  VBA Un timer une seconde tout simple  » issu de CommentCaMarche (https://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.

Ajouter un commentaire

Commentaires

Commenter la réponse de bédu