OVH Cloud OVH Cloud

automation, quitter vraiment excel

15 réponses
Avatar
Bonjour,

bon déja je vous réitere mes remerciements pour vos précédentes réponses mon
module d'export vers excel est fini et j'en suis trés content :-)

J'ai quand meme néanmoins un petit souci : a la fn de mon code le
"appexcel.Quit" laisse à désirer car si excel se ferme en apparence, je
constate en faisant un Ctrl Alt Suppr que le process EXCEL.EXE est toujours
la...
ce qui est assez génant car je peux me retrouver a vec x process excel...
mon code est du style :

Set appexcel = CreateObject("Excel.Application")
appexcel.Visible = True
Set wbexcel = appexcel.Workbooks.Open(XLpath & "Modeles Export.xlt")
.. blalblabla
appexcel.Quit
(+ les Set Nothing)

Si je ne met pas le appexcel.Quit et que je ferme "manuellement", pas de
souci, le process est libéré.

Comment ça se fait ?

Merci pour vos avis et conseils.

5 réponses

1 2
Avatar
Gafish
camille wrote:
oui excuses moi... depuis j'ai copié la fonction et je fais des
tests... assez peu concluants... :-(
C'est à dire ?

Des messages d'erreur ? Toujours ton process en fond ?
--
Charte du forum : http://users.skynet.be/mpfa/
Recherche dans les archives :
http://groups.google.fr/group/microsoft.public.fr.access?hl=fr

Avatar
bon je suis en train de mener l'enquete... a priori ça vient de mon classeur
ou ma feuille.
je fais des tests, synthese des résultats :

si je crée un classeur vierge et que je le passes a ta fonction, pas de
probleme :
ouverture - ecriture - enregitrement- fermeture-liberation du process,(tout
ça invisible normal)

si j'insere dans mon classeur neuf la feuille du modele qui m'interesse
ouverture - ecriture - *la boite d'enregitrement s'affiche* j'enregistre -
fermeture-*pas de liberation du process*

je vois pas encore d'ou ça peut venir...


merci
Gafish wrote:
camille wrote:
oui excuses moi... depuis j'ai copié la fonction et je fais des
tests... assez peu concluants... :-(
C'est à dire ?

Des messages d'erreur ? Toujours ton process en fond ?



Avatar
c'est bien un probleme de "corruption" ou qq chose comme ça du classeur, je
me souviens que mon classeur qui occasione l'erreur est un xlt que j'ai
dupliqué et renommé en xls via l'explorateur, ça pourrait bien etre une
raison...

j'ai donc réimporté dans un classeur neuf mes feuilles modeles et ça s'est
passé comme ça :
je ferme le classeur, il me demande d'enregistrer, je l'enregistre, je le
rouvres direct et je le referme aussi sec sans avoir rien modifié... et la
il me demande l'enreg avec une msgbox du genre "...créé avec une version
antérieure d'excel ... besoin de recalculer les formules " je fais OK
...j'avais déja enregistré ces feuilles 2000 fois depuis 2 jours, mais va
savoir... est ce que justement la manipulation de feuilles par automation
depuis access pourait pas engendrer des trucs comme ça ....

aprés tout ça ...ça marche ! (merci mon dieu) *le process est libéré* sur
execution de la fonction *fIsAppRunning*
sur ma lancée je continues avec *la fonction de base* qui se passe de
fIsAppRunning et ... execution => *process libéré* :-)

donc me reste a confirmer la suite des opérations, cad refiler au classeur
la fonction qui effectue la manip complete sur la feuille.
et voir apres, quand j'aurais reconverti le classeur en xlt, si ça marche
aussi bien.

merci pour ton aide, mea culpa pour pas avoir pensé a tester sur un classeur
neuf plus vite, bon d'accord, c'est pas un bug c'est juste un 1/2 bug :-)




bon j'ai réimporté mes feuilles modeles dans un
camille wrote:
bon je suis en train de mener l'enquete... a priori ça vient de mon
classeur ou ma feuille.
je fais des tests, synthese des résultats :

si je crée un classeur vierge et que je le passes a ta fonction, pas
de probleme :
ouverture - ecriture - enregitrement- fermeture-liberation du
process,(tout ça invisible normal)

si j'insere dans mon classeur neuf la feuille du modele qui
m'interesse ouverture - ecriture - *la boite d'enregitrement
s'affiche* j'enregistre - fermeture-*pas de liberation du process*

je vois pas encore d'ou ça peut venir...


merci
Gafish wrote:
camille wrote:
oui excuses moi... depuis j'ai copié la fonction et je fais des
tests... assez peu concluants... :-(
C'est à dire ?

Des messages d'erreur ? Toujours ton process en fond ?





Avatar
*fin du probleme*
remplacement de l'ancien xls par le nouveau, test du code complet OK process
libéré impeccable
enregistrement en xlt via excel, test sur le xlt = impec
Donc c'était apparement fichier corrompu...
Bon maintenant je souhaites que le nouveau xls subisse pas une mort
prématurée, j'y ai passé assez de temps a celui la :-)

enregistrement via excel en xlt
camille wrote:
c'est bien un probleme de "corruption" ou qq chose comme ça du
classeur, je me souviens que mon classeur qui occasione l'erreur est
un xlt que j'ai dupliqué et renommé en xls via l'explorateur, ça
pourrait bien etre une raison...

j'ai donc réimporté dans un classeur neuf mes feuilles modeles et ça
s'est passé comme ça :
je ferme le classeur, il me demande d'enregistrer, je l'enregistre,
je le rouvres direct et je le referme aussi sec sans avoir rien
modifié... et la il me demande l'enreg avec une msgbox du genre
"...créé avec une version antérieure d'excel ... besoin de recalculer
les formules " je fais OK ...j'avais déja enregistré ces feuilles
2000 fois depuis 2 jours, mais va savoir... est ce que justement la
manipulation de feuilles par automation depuis access pourait pas
engendrer des trucs comme ça ....
aprés tout ça ...ça marche ! (merci mon dieu) *le process est
libéré* sur execution de la fonction *fIsAppRunning*
sur ma lancée je continues avec *la fonction de base* qui se passe de
fIsAppRunning et ... execution => *process libéré* :-)

donc me reste a confirmer la suite des opérations, cad refiler au
classeur la fonction qui effectue la manip complete sur la feuille.
et voir apres, quand j'aurais reconverti le classeur en xlt, si ça
marche aussi bien.

merci pour ton aide, mea culpa pour pas avoir pensé a tester sur un
classeur neuf plus vite, bon d'accord, c'est pas un bug c'est juste
un 1/2 bug :-)



bon j'ai réimporté mes feuilles modeles dans un
camille wrote:
bon je suis en train de mener l'enquete... a priori ça vient de mon
classeur ou ma feuille.
je fais des tests, synthese des résultats :

si je crée un classeur vierge et que je le passes a ta fonction, pas
de probleme :
ouverture - ecriture - enregitrement- fermeture-liberation du
process,(tout ça invisible normal)

si j'insere dans mon classeur neuf la feuille du modele qui
m'interesse ouverture - ecriture - *la boite d'enregitrement
s'affiche* j'enregistre - fermeture-*pas de liberation du process*

je vois pas encore d'ou ça peut venir...


merci
Gafish wrote:
camille wrote:
oui excuses moi... depuis j'ai copié la fonction et je fais des
tests... assez peu concluants... :-(
C'est à dire ?

Des messages d'erreur ? Toujours ton process en fond ?







Avatar
Pierre CFI [mvp]
oui, mais c'est un pb assez réccurrent quand méme, je me demande si c'est pas une histoire de réf. Lors de la création d'un objet
excel, c'est une autre version qui apparait Mais Arnaud, le boureau a eu sa peau

--
Pierre CFI
MVP Microsoft Access
Mail : http://cerbermail.com/?z0SN8cN53B

Site pour bien commencer
Access http://users.skynet.be/mpfa/
Excel http://www.excelabo.net

<camille> a écrit dans le message de news: 42a05ec4$0$23736$
*fin du probleme*
remplacement de l'ancien xls par le nouveau, test du code complet OK process libéré impeccable
enregistrement en xlt via excel, test sur le xlt = impec
Donc c'était apparement fichier corrompu...
Bon maintenant je souhaites que le nouveau xls subisse pas une mort prématurée, j'y ai passé assez de temps a celui la :-)

enregistrement via excel en xlt
camille wrote:
c'est bien un probleme de "corruption" ou qq chose comme ça du
classeur, je me souviens que mon classeur qui occasione l'erreur est
un xlt que j'ai dupliqué et renommé en xls via l'explorateur, ça
pourrait bien etre une raison...

j'ai donc réimporté dans un classeur neuf mes feuilles modeles et ça
s'est passé comme ça :
je ferme le classeur, il me demande d'enregistrer, je l'enregistre,
je le rouvres direct et je le referme aussi sec sans avoir rien
modifié... et la il me demande l'enreg avec une msgbox du genre
"...créé avec une version antérieure d'excel ... besoin de recalculer
les formules " je fais OK ...j'avais déja enregistré ces feuilles
2000 fois depuis 2 jours, mais va savoir... est ce que justement la
manipulation de feuilles par automation depuis access pourait pas
engendrer des trucs comme ça ....
aprés tout ça ...ça marche ! (merci mon dieu) *le process est
libéré* sur execution de la fonction *fIsAppRunning*
sur ma lancée je continues avec *la fonction de base* qui se passe de
fIsAppRunning et ... execution => *process libéré* :-)

donc me reste a confirmer la suite des opérations, cad refiler au
classeur la fonction qui effectue la manip complete sur la feuille.
et voir apres, quand j'aurais reconverti le classeur en xlt, si ça
marche aussi bien.

merci pour ton aide, mea culpa pour pas avoir pensé a tester sur un
classeur neuf plus vite, bon d'accord, c'est pas un bug c'est juste
un 1/2 bug :-)



bon j'ai réimporté mes feuilles modeles dans un
camille wrote:
bon je suis en train de mener l'enquete... a priori ça vient de mon
classeur ou ma feuille.
je fais des tests, synthese des résultats :

si je crée un classeur vierge et que je le passes a ta fonction, pas
de probleme :
ouverture - ecriture - enregitrement- fermeture-liberation du
process,(tout ça invisible normal)

si j'insere dans mon classeur neuf la feuille du modele qui
m'interesse ouverture - ecriture - *la boite d'enregitrement
s'affiche* j'enregistre - fermeture-*pas de liberation du process*

je vois pas encore d'ou ça peut venir...


merci
Gafish wrote:
camille wrote:
oui excuses moi... depuis j'ai copié la fonction et je fais des
tests... assez peu concluants... :-(
C'est à dire ?

Des messages d'erreur ? Toujours ton process en fond ?











1 2