Fermer Excel depuis Access [VB] - VB/VBA/VBS - Programmation
Marsh Posté le 01-07-2005 à 09:29:49
Essaye en fermant le workbook (quand j'avais travaillé avec Excel je fermais le worksheet, le workbook puis l'application, sans quoi Excel devenait out process).
Marsh Posté le 01-07-2005 à 09:37:04
Ce n'est pas deja ce que je fais avec "ClasseurExcel.Close savechanges:=False" ?
Marsh Posté le 04-07-2005 à 01:37:02
Désolé, y'avais pas fait attention à ca
Quel est le traitement représenté par les 2 lignes ... ?
Marsh Posté le 04-07-2005 à 09:28:54
Merci a toi Juntao2k2 de m'apporter ton aide
Sans rentrer dans les details, les 2 lignes ... permettent:
- la création de multiples feuilles excel par copie de feuille contenues dans nomCompletFichierCanevas
- l'insertion de données provenant de requetes d'access
- l'insertion de plan Autocad avec leur redimensionnement
- la supression des feuilles "modeles" dans le classeur excel d'origine
Toutes les opérations se déroulent sans aucun problème, sans aucun message d'erreur.
Le gros soucis, sans parler de générer un code fonctionnant proprement, c'est que l'instance Excel atteint 360 Mo en mémoire
Marsh Posté le 06-07-2005 à 00:18:19
Il me semble que pour quitter Excel et libérer la mémoire utilisée il faut juste utiliser :
Citation : |
(Sous Access 2003 car je n'ai plus sous la main le 2000 )
En espérant t'aider
[Edit]
Il me semble que ClasseurExcel.Close savechanges:=False est le code de vb sous excel
Sous Access , ça s'apparente plutôt à ApplicationExcel .ActiveWorkbook.Saved = True (Pour qu'il ne nous pose pas la question)
Marsh Posté le 06-07-2005 à 08:16:38
Krocc, merci d'essayer de m'aider
Citation : ApplicationExcel.Quit |
donne le même résultat que
Citation : ApplicationExcel.Application.Quit |
Pour
Citation : ClasseurExcel.Close savechanges:=False |
j'ai déja sauvegarder le classeur avant avec un nom différent de celui sous lequel je l'ai ouvert, donc je le ferme sans sauvegarder et sans poser la question.
Vraiment je suis perdu, je pense maintenant a un bug excel
Marsh Posté le 06-07-2005 à 15:02:41
J'ai trouvé!!!
Tout d'abbord, merci a ceux qui m'ont aidé
La solution:
pour la suppresion de feuilles dans excel, j'ai remplacé
Citation : ClasseurExcel.Worksheets(i).Select |
par
Citation : ClasseurExcel.Worksheets(i).Delete |
et par miracle mon process Excel.exe disparait a la fin du traitement.
Marsh Posté le 30-06-2005 à 14:43:09
Bonjour a tous,
Je n'arrive pas a fermer excel depuis Access; Excel est toujours visible dans le gestionnaire des taches sous Win XP SP2. Voici le code que j'utilise:
...
Set ApplicationExcel = CreateObject("Excel.Application" )
ApplicationExcel.Application.Workbooks.Open nomCompletFichierCanevas
Set ClasseurExcel = ApplicationExcel.Application.ActiveWorkbook
ClasseurExcel.Application.Visible = True
...
...
ClasseurExcel.SaveAs (nomFichierEXCEL)
ClasseurExcel.Close savechanges:=False
ApplicationExcel.Application.Quit
Set ClasseurExcel = Nothing
Set ApplicationExcel = Nothing
Quelqu'un aurait une idée? une piste?
EDIT: Petite précision: Excel 2000 et Access 2000