Bonjour,
J'ai un fichier excel qui sert de tableau de bord avec 3 onglets différents.
Je souhaiterais que chaque onglet s'affiche une dizaine de secondes, puis le suivant une dizaine de secondes, puis le suivant ... le tout en boucle.
J'ai essayé de faire une procédure d'affichage pour chaque onglet mais comme cela se base sur l'heure + xx secondes, l'affichage ne s'exécute pas à leur de fin d'exécution de la procédure précédente mais par rapport à l'heure système.
Voici le code utilisé :
Sub Affichage()
Affichage_1
Affichage_2
Affichage_3
End Sub
Sub Affichage_1()
majauto = TimeSerial(Hour(Time), Minute(Time), Second(Time) + 10)
' Appel récursif
Application.OnTime majauto, "Affichage_1"
Call onglet_1
End Sub
Sub onglet_1
ActiveWorkbook.Sheets("1").Activate
Range("A1").Select
End Sub
Sub Affichage_2()
majauto = TimeSerial(Hour(Time), Minute(Time), Second(Time) + 15)
' Appel récursif
Application.OnTime majauto, "Affichage_2"
Call onglet_2
End Sub
Sub onglet_2
ActiveWorkbook.Sheets("2").Activate
Range("A1").Select
End Sub
Sub Affichage_3()
majauto = TimeSerial(Hour(Time), Minute(Time), Second(Time) + 30)
' Appel récursif
Application.OnTime majauto, "Affichage_3"
Call onglet_3
End Sub
Sub onglet_3
ActiveWorkbook.Sheets("3").Activate
Range("A1").Select
End Sub
Je cherche donc un moyen d’exécuter une procédure seulement quand la précédente est terminée, ou bien faire une pause entre les 2.
Quelqu'un aurait-il une idée?
Merci pour votre aide
(je précise que je ne suis pas spécialiste de VBA)