Deprecated: RegularLabs\Library\ArrayHelper::implode(): Implicitly marking parameter $last_glue as nullable is deprecated, the explicit nullable type must be used instead in /homepages/10/d550841420/htdocs/libraries/regularlabs/src/ArrayHelper.php on line 225
Comment insérer une attente (dans un module VBA-word) entre 2 instructions ?

Recherche

 

Vous pouvez utilisez la méthode OnTime prévue pour faire démarrer la macro à une heure donnée.

Cette méthode va permettre également de faire une pause dans une macro, en définissant un laps de temps avant la reprise..

La syntaxe est la suivante :

Application.OnTime(WhenName, Tolerance)

L'argument When détermine l'heure à laquelle la macro va reprendre. On va donc utiliser la fonction Now à laquelle on va ajouter le laps de temps souhaité.

L'agument Name demande le nom de la macro à exécuter. Ce qui signifie qu'il faudra donc deux macros, l'une pour le début du code et l'autre pour la fin du code après la pause.

L'argument Tolérance permet d'annuler la macro. C'est la durée maximale (en secondes) pouvant s'écouler avant l'annulation de la seconde macro tant qu'elle n'a pas été exécutée.


L'exemple ci-dessous montre affiche un message, puis attend 20 secondes avant d'afficher le seconde message compris dans la seconde macro.

Sub Macro1()
MsgBox "Ceci est le début de la macro, lorsque vous appuierez sur OK," & _
" vous attendrez 20 secondes que la macro reprenne"
' Pause de 20 seconds.
Application.OnTime When:=Now + TimeValue("00:00:20"), _
Name:="Macro2"

End Sub

Public Sub Macro2()
MsgBox "la seconde macro reprend : Ce message s'affiche 20 secondes après le premier"
End Sub

 

 

Statistiques

France 72,3% France
Canada 5,3% Canada
Chine 3,7% Chine

Total:

154

Pays
018457934
Aujourd'hui: 119
Hier: 236
Cette semaine: 119
Semaine dernière: 2.729
Ce mois: 5.862