Page 1 of 1

Attendre l'ouverture d'un programme en x secondes ?!

Posted: 14 Mar 2018, 11:51
by djwaves
Bonjour à tous,

Je sauvegarde des fichiers word en fichier .pdf (ce qui ouvre automatiquement mon programme avec le nouveau fichier .pdf) mais ça peut être aussi l'ouverture de gros fichiers excel,...

Habituellement, je le fais attendre 10-15 secondes avant de lancer l'action suivante (voir même un prompt) mais j'ai remarqué que suivant ce qui est déjà ouvert sur mon pc, ça peut même varié à 30 secondes.

Existe t-il un moyen de dire à la macro "d'attendre" l'ouverture du programme avant de lancer l'action suivante (à part les 2 moyens que j'utilise déjà) ??

Merci à vous :D

Re: Attendre l'ouverture d'un programme en x secondes ?!

Posted: 05 Apr 2018, 07:50
by Aramis
Bonjour,
Peut-être en faisant une tentative d'ouverture du fichier Excel pour tenter de savoir si le fichier est encore ouvert par MS EXCEL.
Mais je ne suis pas un expert.
Cdlt

Re: Attendre l'ouverture d'un programme en x secondes ?!

Posted: 06 Apr 2018, 09:31
by francois
Bonjour

On peut tester l'existence du fichier créé en sortie.

On boucle N fois avec une attente à chaque boucle.
A chaque boucle, teste de l'existence du fichier et si OK, sortie de boucle et le script continue.
Si après la Nième boucle, pas de fichier trouvé, PB: le script s’arrête.

Paramètres suivant le contexte (en début de script) :
  • le fichier
  • Le nombre de boucles
  • le temps d'attente à chaque boucle

Code: Select all

//=====
tester_existence= "c:/temp/toto.txt"
nb_boucles = 10;
attente= 1000 // en millisecondes
//=====

//======
for(i=0;i<nb_boucles;i++){
  if (File.exists(tester_existence)) {
          break; // on sort de la boucle
  } // fin if
Execution.pause(attente)
} // fin for 
//=====



//=====
if (i == nb_boucles) {
Console.print("Le fichier  n  existe pas (apres n boucles) "  + "\n\r Fin du script"  )
Execution.stop()
}
//Sinon on continue
Console.print("Le fichier existe  "  + "\n\r Suite du script")
//=====