OVH Cloud OVH Cloud

Commande Shell

3 réponses
Avatar
RENAUD Eric
Bonjour,
J'utilise une commande Shell pour dézipper une base.
Le problème c'est que la commande passe la main à la ligne de code suivante
alors que je voudrais attendre la fin du dézippage pour continuer.
D'avance merci

3 réponses

Avatar
Xav
Bonjour RENAUD Eric

une astuce que j'ai trouvée est de mettre un MsgBox après le shell. Mais
cela implique une intervention de l'utilisateur une fois que ton processus
est terminé

Je suis preneur d'une solution plus élégante :-)

--
Cordialement

@+
Xav
"RENAUD Eric" a écrit dans le message de
news:
Bonjour,
J'utilise une commande Shell pour dézipper une base.
Le problème c'est que la commande passe la main à la ligne de code
suivante

alors que je voudrais attendre la fin du dézippage pour continuer.
D'avance merci




Avatar
Michel Pierron
Bonsoir Eric;
Oui, le problème est que la fonction Shell est asynchrone; c'est à dire que
le code continue avant la fin de cette commande.
Essaie comme ceci:
'* Suspend l'exécution du code Excel le temps de zippzer le fichier
AppActivate Shell(Ici ta commande Shell), 1
'* Poursuite de l'exécution du code
AppActivate Application.Caption, 1

MP

"RENAUD Eric" a écrit dans le message de
news:
Bonjour,
J'utilise une commande Shell pour dézipper une base.
Le problème c'est que la commande passe la main à la ligne de code
suivante

alors que je voudrais attendre la fin du dézippage pour continuer.
D'avance merci




Avatar
Frédéric Sigonneau
Bonsoir,

Pas mal de solutions pour attendre la fin de l'exécution d'un programme lancé
par Shell sur cette page :

http://frederic.sigonneau.free.fr/Tempos.htm

FS
---
Frédéric Sigonneau [MVP Excel - né un sans-culottide]
Gestions de temps, VBA pour Excel :
http://frederic.sigonneau.free.fr
Si votre question sur Excel est urgente, évitez ma bal !

Bonjour,
J'utilise une commande Shell pour dézipper une base.
Le problème c'est que la commande passe la main à la ligne de code suivante
alors que je voudrais attendre la fin du dézippage pour continuer.
D'avance merci