VBA, faire attendre ma macro

Résolu/Fermé
nanou2183
Messages postés
46
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
15 juin 2010
- 2 déc. 2009 à 12:54
 bob - 21 juin 2011 à 15:03
Bonjour,

J'ai un fichier excel automatisé grâce à une macro.
Dans un premier temps cette macro lance l'exécution d'un fichier bat qui génère des graphiques
Ensuite la macro met tout ca en page
le problème c'est qu'elle n'attend pas la fin de l'exécution du .bat avant de continuer et du coup ca plante puisque les graphiques ne sont pas en généré

J'ai trouvé ca : Application.Wait Now + TimeValue("0:01:30")
mais il me dit qu'il ne connait pas cette fonction

Que faire ?
Merci de votre aide

3 réponses

nanou2183
Messages postés
46
Date d'inscription
lundi 19 février 2007
Statut
Membre
Dernière intervention
15 juin 2010
11
2 déc. 2009 à 13:57
Merci beaucoup de ton aide
nikel
tout fonctionne à merveille
6
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 193
2 déc. 2009 à 13:53
Re

Dsl mais j'ai été occupé en fin de matinée, j'ai pas pu finir de te répondre sur l'autre topic.

Tu peux faire comme ceci:

En entête de ton module du met ça :
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)


Il faut ensuite utiliser la commande Sleep et lui affecter le temps de pause en millisecondes, par exemple pour une pause de 10 secondes

Sleep 10000

Ca devrait le faire.

;o)
4
Salut Polux,

Merci beaucoup pour cette astuce.

Je tente de faire une macro qui va chercher et copier coller valeur des informations dynamiques sur différents classeurs et la fonction Sleep semble empêche le chargement du classeur en question.

Aurais-tu une solution pour palier à ce problème ?

Merci

Harry
0
Harryhn

Fait une boucle genre
sub macro1()
xxxx
sleep 15000
call macro1

end sub

Tu appel ta macro avant le sleep (ou à la place des xxxx)
0
Polux31
Messages postés
6917
Date d'inscription
mardi 25 septembre 2007
Statut
Membre
Dernière intervention
1 novembre 2016
1 193
2 déc. 2009 à 13:59
De rien,

N'oublie pas de mettre le sujet en Résolu si ton problème est réglé.

Bonne continuation et bon courage.

;o)
0