Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Wscript.Sleep en vbs, mais quoi en VBA ?

6 réponses
Avatar
sympatix
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en vbs, et
qui sert à suspendre l'éxécution d'un script pendant un temps donné), mais
en VBA, car visiblement, l'objet intrinsèque "Wscript" du moteur de script
Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance

--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)

6 réponses

Avatar
Jacques
Bonsoir
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en vbs, et
qui sert à suspendre l'éxécution d'un script pendant un temps donné), mais
en VBA, car visiblement, l'objet intrinsèque "Wscript" du moteur de script
Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance



Application.Wait (Now() + TimeValue("0:00:5"))

suspend l'execution pendant 5 secondes.


--
Cordialement,

Jacques.

Avatar
GD
Bonsour® sympatix
ce n'est pas à proprement parler une fonction VBA
mais une des fonctions natives de Windows que l'on nomme API :
dans ce cas :
'The Sleep function suspends the execution of the current thread for a
specified interval.
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

usage :
Sleep 5000

d'autres infos sur les API à AllApi.net

@+
wrote:
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en
vbs, et qui sert à suspendre l'éxécution d'un script pendant un temps
donné), mais en VBA, car visiblement, l'objet intrinsèque "Wscript"
du moteur de script Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance


Avatar
sympatix
Application.Wait (Now() + TimeValue("0:00:5"))
Merci, ça a l'air de marcher.


--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)
"Jacques" a écrit dans le message de
news: %
Bonsoir
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en vbs, et
qui sert à suspendre l'éxécution d'un script pendant un temps donné),
mais en VBA, car visiblement, l'objet intrinsèque "Wscript" du moteur de
script Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance



Application.Wait (Now() + TimeValue("0:00:5"))

suspend l'execution pendant 5 secondes.


--
Cordialement,

Jacques.



Avatar
sympatix
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)
Sleep 5000
Oui, ça a l'air très bien (en fait, c'est même exactement ce qu'il me

faut)...
Par contre, n'étant pas trop coutumier du VBA, je n'arrive pas à placer
cette Sub (au fait, l'exemple ça a l'air d'être du VB tout court ?)
J'ai essayé de la placer bêtement au dessus de mon autre sub qui est
elle-même dans un module, mais ça n'a pas l'air de coller !
Visiblement je m'y prend mal...Comment faire ?

merci !

--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)
"GD" a écrit dans le message de news:

Bonsour® sympatix
ce n'est pas à proprement parler une fonction VBA
mais une des fonctions natives de Windows que l'on nomme API :
dans ce cas :
'The Sleep function suspends the execution of the current thread for a
specified interval.
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

usage :
Sleep 5000

d'autres infos sur les API à AllApi.net

@+
wrote:
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en
vbs, et qui sert à suspendre l'éxécution d'un script pendant un temps
donné), mais en VBA, car visiblement, l'objet intrinsèque "Wscript"
du moteur de script Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance






Avatar
GD
Bonsour® sympatix
la déclaration
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

est à mettre en début d'un module standard et avant les proc,
le terme private est même facultatif

toutes les API's appartenant au Noyau Windows (librairie Kernel32)
sont en général compatibles VB etb VBA
;o)))
@+


Sleep 5000
Oui, ça a l'air très bien (en fait, c'est même exactement ce qu'il me
faut)...
Par contre, n'étant pas trop coutumier du VBA, je n'arrive pas à
placer cette Sub (au fait, l'exemple ça a l'air d'être du VB tout
court ?) J'ai essayé de la placer bêtement au dessus de mon autre sub
qui est elle-même dans un module, mais ça n'a pas l'air de coller !
Visiblement je m'y prend mal...Comment faire ?

merci !

Bonsour® sympatix
ce n'est pas à proprement parler une fonction VBA
mais une des fonctions natives de Windows que l'on nomme API :
dans ce cas :
'The Sleep function suspends the execution of the current thread for
a specified interval.
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As
Long)

usage :
Sleep 5000

d'autres infos sur les API à AllApi.net

@+
wrote:
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en
vbs, et qui sert à suspendre l'éxécution d'un script pendant un
temps donné), mais en VBA, car visiblement, l'objet intrinsèque
"Wscript" du moteur de script Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance






Avatar
sympatix
est à mettre en début d'un module standard et avant les proc
Merci, je viens juste de trouver au même moment...je l'ai mis effectivement

tout seul dans un module...et ça marche au poil !
ça a l'air pas mal les API, je vais voir si on peut les utiliser en vbs.

Merci !
--
Cordialement
Sympatix
(Antispam: Ôter les "toto" dans l'adresse, pour me répondre)
"GD" a écrit dans le message de news:

Bonsour® sympatix
la déclaration
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

est à mettre en début d'un module standard et avant les proc,
le terme private est même facultatif

toutes les API's appartenant au Noyau Windows (librairie Kernel32)
sont en général compatibles VB etb VBA
;o)))
@+


Sleep 5000
Oui, ça a l'air très bien (en fait, c'est même exactement ce qu'il me
faut)...
Par contre, n'étant pas trop coutumier du VBA, je n'arrive pas à
placer cette Sub (au fait, l'exemple ça a l'air d'être du VB tout
court ?) J'ai essayé de la placer bêtement au dessus de mon autre sub
qui est elle-même dans un module, mais ça n'a pas l'air de coller !
Visiblement je m'y prend mal...Comment faire ?

merci !

Bonsour® sympatix
ce n'est pas à proprement parler une fonction VBA
mais une des fonctions natives de Windows que l'on nomme API :
dans ce cas :
'The Sleep function suspends the execution of the current thread for
a specified interval.
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As
Long)

usage :
Sleep 5000

d'autres infos sur les API à AllApi.net

@+
wrote:
Bonjour !

Y a-t-il un équivalant de la fonction "Wscript.Sleep" (qui est en
vbs, et qui sert à suspendre l'éxécution d'un script pendant un
temps donné), mais en VBA, car visiblement, l'objet intrinsèque
"Wscript" du moteur de script Wsh n'est pas dispo en VBA.

Le but étant, dans le cas présent de faire une boucle d'attente d'un
évènement.

Merci d'avance