2017-09-23 2 views
0

Quand j'utilise la commandeCMD n'attend pas terminer processus

<path exc.xlsx> 

il commence à travailler fichier Excel et attendre jusqu'à ce que je ferme le fichier que je peux taper la commande suivante. Mon problème est que quand un autre fichier excel est en cours d'exécution, cmd n'attend pas pour fermer le fichier et passe à la ligne suivante. Il est nécessaire de taper la commande qui obligera cmd à attendre jusqu'à ce que je ferme le fichier Excel même si un autre fichier Excel est en cours d'exécution. J'ai essayé beaucoup de commandes sur internet mais personne ne semble fonctionner correctement. Ce sont par exemple:

start /wait exc.xlsx && exit 
exc.xlsx cmd /k 
exc.xlsx|rem 

J'utilise Windows7.

+0

Il peut être possible de configurer Excel pour charger chaque document dans un processus distinct, je ne me souviens pas. C'est la seule solution possible. Si un document n'a pas de processus dédié, l'interpréteur de commandes n'a aucun moyen de savoir quand vous l'avez fermé. –

+0

Je ne trouve pas le processus Excel même quand un seul fichier est ouvert. J'ai fait un simple script en python qui fonctionne dans la boucle et essaie de changer le nom du fichier. Quand il peut changer le nom, cela signifie que le fichier est fermé, mais parfois le script semble être bloqué et ne peut pas ouvrir mon fichier Excel. – ForyszeP

Répondre

0

J'essaie cette méthode mais parfois elle ne fonctionne pas correctement. La ligne essaie de changer le nom du fichier. Si cela peut signifier que le fichier est fermé et casser la boucle mais en utilisant que le script parfois ne peut pas ouvrir le fichier Excel. Je ne suis pas aussi avancé que je le serais et ne peux pas trouver un autre moyen de vérifier si le fichier est fermé.

import os 
def is_open(file_name): 
    if os.path.exists(file_name): 
     while True: 

      try: 
       os.rename(file_name, file_name) 
       break 
      except: 
       continue 
     time.sleep(0.001) 
is_open('exc.xlsx') 

Ce n'est pas très digne et utilise beaucoup de processeur. S'il y a un moyen d'utiliser le langage de programmation (avec python, je peux le mettre dans mon script.