XL 2010 Timer évenementiel Excel VBA

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

pleasewait

XLDnaute Nouveau
Bonjour,
Je cherche conseil pour créer un timer événementiel sous Excel 2010 VBA (appel à lib Windows ???)
J'ai testé le code proposé par Microsoft pour les timer sur l'aide en ligne :
Dim PauseTime, Start, Finish, TotalTime
If (MsgBox("Press Yes to pause for 5 seconds", 4)) = vbYes Then
PauseTime = 5 ' Set duration.
Start = Timer ' Set start time.
Do While Timer < Start + PauseTime
DoEvents ' Yield to other processes.
Loop
Finish = Timer ' Set end time.
TotalTime = Finish - Start ' Calculate total time.
MsgBox "Paused for " & TotalTime & " seconds"
Else
End
End If

Cela ne répond pas du tout à ce que je veux faire (évidemment) :
  • Timer événementiel
  • CPU ok
Avez-vous des idées ?

Bonne soirée à tous.
 
Solution
Suffit de reprendre le code que j'ai déjà indiqué et ajouter le lancement à l'ouverture du classeur et l'arrêt à sa fermeture. Tout ça pour en arriver là ! 😎

Et adapter la constante Private Const TimerDurationInSeconds = 60 * 3 'Timer toutes les 3 minutes
Oui, je pense que c'est mieux avec Application.OnTime.
Et il n'y a pas le même danger qu'avec un timer car c'est Excel qui décide l'exécution quand il est prêt à la supporter. Il faut refaire le Application.OnTime à la fin, il n'est pas reconduit comme le timer jusqu'à ce qu'on le détruit.
 
Suffit de reprendre le code que j'ai déjà indiqué et ajouter le lancement à l'ouverture du classeur et l'arrêt à sa fermeture. Tout ça pour en arriver là ! 😎

Et adapter la constante Private Const TimerDurationInSeconds = 60 * 3 'Timer toutes les 3 minutes
 

Pièces jointes

Oui, je pense que c'est mieux avec Application.OnTime.
Et il n'y a pas le même danger qu'avec un timer car c'est Excel qui décide l'exécution quand il est prêt à la supporter. Il faut refaire le Application.OnTime à la fin, il n'est pas reconduit comme le timer jusqu'à ce qu'on le détruit.

Suffit de reprendre le code que j'ai déjà indiqué et ajouter le lancement à l'ouverture du classeur et l'arrêt à sa fermeture. Tout ça pour en arriver là ! 😎

Et adapter la constante Private Const TimerDurationInSeconds = 60 * 3 'Timer toutes les 3 minutes
Un grand merci à Dranreb et Dudu2 et toutes mes excuses si je n'ai pas su être plus clair et plus précis dans l'expression de mon besoin mal exprimé dans ce post.
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

Réponses
4
Affichages
364
Réponses
7
Affichages
907
  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
84
  • Question Question
Microsoft 365 Export données
Réponses
4
Affichages
506
Réponses
2
Affichages
411
Réponses
12
Affichages
855
Réponses
1
Affichages
448
Retour