Comment m'en débarrasser ?
Bonjour toutes et tous,
J'ai une bidouille qui a eu marché mais maintenant elle s'exécute sans fin. Voici l'extrait du code concerné:
Code:
1 2 3 4 5 6 7 8 9
| 'Créer une instance de Word
Set appWord = GetObject("Word.Application") ' Vérifie si Word est déjà ouvert
If appWord Is Nothing Then
Set appWord = CreateObject("Word.Application") ' Sinon, ouvrir une nouvelle instance
'Fermer_Word = " True"
End If
On Error GoTo 0
Set WordDoc1 = appWord.Documents.Open("E:\2_M_E_S__P_R_O_J_E_T_S\Périple\5ème analyse\analyse_epil_A.docm") |
A la première exécution tout s'est bien passé. A partir de la deuxième exécution le code mouline sans fin sur la dernière ligne et je dois faire Ctrl/Alt + Del pour le stopper. Je trouve alors le message "Le fichier word analyse_epil_A.docm est en cours d'utilisation par (moi)". J'ai redémarré pour vider la mémoire mais sans résultat. J'ai enlevé l'apostrophe à la ligne 5 (Fermer Word = True") mais ça ne change rien. Comment me débarrasser de ce fichier Word ? Ajouter quelque part - mais où ? - une ligne
Code:
analyse_epil_A.docm = Nothing
?
Merci d'avance pour toute piste.
Cordialement
touche_a_tout
[XL-2016] Comment m'en débarrasser ?
Merci sabot'age et tototiti,
Je vais tester vos deux propositions et donner des nouvelles
Cordialement
touche_a_tout
[XL-2016] Comment m'en débarrasser ? Votre message
Rebonjour,
Hélas il y a un souci.
L'erreur se produit à la ligne 9, il faut donc, pour éviter l'erreur, que mondocument soit fermé avant, mais alors la ligne 9 ne fonctionne plus si mondocument est fermé. Même chose si on quitte appWord avant la ligne 9.
Et si on met l'une ou l'autre de ces instructions après la ligne 9, c'est trop tard, l'erreur a eu lieu.
Ou alors est-ce que je n'ai rien compris ?
Merci à qui pourra me dépanner.
Cordialement
touche_a_tout
[XL-2016] Comment m'en débarrasser ?
Bien reçu et merci, tototiti.
Je m'y remets au plus tôt demain.
Cordialement
touche_a_tout
[XL-2016] Comment m'en débarrasser ?
Bonjour,
J'ai un peu tardé parce que, pour tout dire, mon texte faisait 55000 lignes environ et ça prenait tellement de temps que j'ai voulu le traiter en quatre fois avec une variable tableau WordDoc(1 to 4); mais ça me compliquait tellement l'existence que je suis revenu à la version du traitement en une fois et grâce à votre aide, ça marche ! Une fois le texte réparti à raison d'un mot par cellule j'ai une moulinette qui calcule la fréquence de chaque mot et la proportion de mots utilisés une seule fois par rapport au total des mots utilisés est un indicateur de la richesse du vocabulaire. Donc grand merci à vous deux !
Cordialement
touche_a_tout