Faire defiler les pages d'un classeur Excel en VBA

Fermé
JHache1801_ Messages postés 19 Date d'inscription lundi 8 juillet 2019 Statut Membre Dernière intervention 30 août 2019 - 8 juil. 2019 à 10:32
pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 - 12 juil. 2019 à 14:21
Bonjour,

Je développe une petite application Excel et j'aurais aimé savoir si il serait possible de faire en sorte que les pages défiles automatiquement lorsqu'on lance une macro et que ce défilement s'arrête une fois que l'on appuie sur le clic gauche par exemple (pour ma part j'ai 9 pages et j'aimerais qu'une fois arrivé à la dernière page le défilement reprenne depuis le début)

PS: J'ai déjà une macro qui tourne au lancement du fichier Excel qui permet de le rafraîchir toute les secondes pour afficher l'heure sur une des pages (point qui me semble important de vous communiquer)


Merci d'avance
Cdlmnt
A voir également:

1 réponse

pilas31 Messages postés 1825 Date d'inscription vendredi 5 septembre 2008 Statut Contributeur Dernière intervention 24 avril 2020 643
12 juil. 2019 à 14:21
Bonjour,

Voici une façon de faire
Declare Function GetAsyncKeyState Lib "User32" (ByVal vKey As Long) As Integer
Sub DEFILE()
Dim Feuil_Cour As Worksheet
Dim iter As Integer
For iter = 1 To 5
    For Each Feuil_Cour In ThisWorkbook.Worksheets
        Feuil_Cour.Select
        Application.Wait Now + TimeValue("0:00:01")
        If GetAsyncKeyState(2) <> 0 Then
            Exit Sub
        End If
    Next Feuil_Cour
Next iter
End Sub


Un clic sur le bouton droit arrête le défilement.
Cela recommence 5 fois histoire que la boucle ne soit pas éternelle.
J'ai mis une attente de 1 seconde

Cordialement,



0