begin process at 2010 09 06 04:20:52
  Trouver un code source :
 
dans
 
Accueil > Forum > 

Visual Basic 6

 > 

Langages dérivés

 > 

VBA

 > 

Fermer complètement Excel


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Fermer complètement Excel

mercredi 11 mars 2009 à 17:31:40 | Fermer complètement Excel

kkhuet

Bonjour,

j'ai fait le tour de tous les posts trouvés sur la question mais personne ne répond ou ne valide une solution
voici mon code :
    Set xlApp = CreateObject("Excel.application")
    Set Classeur = xlApp.Workbooks.Open(cheminFichier, False, True)
    Set Feuille = Classeur.Worksheets("tata")
   ......
    Classeur.Save
    Classeur.Close
    xlApp.Quit 'fermeture de l'application Excel
    'Désallocation mémoire
    Set Feuille = Nothing
    Set Classeur = Nothing
    Set xlApp = Nothing
quand mon programme s'arrête, j'ai toujours Excel qui apparaît dans le gestionnaire des tâches.
Mais qu'est-ce donc ???

Merci

mercredi 11 mars 2009 à 17:41:17 | Re : Fermer complètement Excel

Genildf

Tu as quoi dans ta feuille excel
as tu teste sur une feuille excel vierge?
mercredi 11 mars 2009 à 17:42:32 | Re : Fermer complètement Excel

kkhuet

Pour info, je viens de remarquer que lorsque je ferme Access (2000), mon process Excel disparaît du gestionnaire des tâches...?!?
mercredi 11 mars 2009 à 17:46:04 | Re : Fermer complètement Excel

kkhuet

test avec feuille Excel vierge : aucun changement.
mercredi 11 mars 2009 à 17:50:22 | Re : Fermer complètement Excel

Genildf

lol

Essaye de dessaouler ta mémoire avant avant

et sinon entre Set Feuille = Classeur.Worksheets("tata")
et
Classeur.Save
Il y a quoi
mercredi 11 mars 2009 à 17:54:58 | Re : Fermer complètement Excel

kkhuet

dessaouler ta mémoire ? c'est quoi ?
entre les 2 instructions, j'ai du code qui récupère toutes les lignes de mon fichier Excel pour remplir la BDD, avec un accès à Outlook pour récupérer des infos sur des personnes.
mercredi 11 mars 2009 à 17:56:46 | Re : Fermer complètement Excel

kkhuet

j'ai trouvé sur un autre forum cette fonction :
Private Sub stopXL()
    Dim svc As Object
    Dim oproc
    Dim squery As String
    Set svc = GetObject("winmgmts:root\cimv2")
    squery = "select * from win32_process where name='EXCEL.EXE'"
    For Each oproc In svc.execquery(squery)
        oproc.Terminate
    Next
    Set svc = Nothing
End Sub

mais si j'ai déjà un autre fichier Excel ouvert avant de lancer mon programme, cette fonction ferme aussi l'autre fichier Excel, et évidemment ce n'est pas ce que j'ai envie !
mercredi 11 mars 2009 à 18:07:00 | Re : Fermer complètement Excel

Genildf

  Set Feuille = Nothing
    Set Classeur = Nothing
    Set xlApp = Nothing

met sa avant de quitter
Et vérifie bien si ton programme a bien tout récupéré avant de quitter et si tou c bien passe

ps essaye le mode pas a pas pour voir  si sa marche mieux







mercredi 11 mars 2009 à 18:21:40 | Re : Fermer complètement Excel

kkhuet

on désalloue la mémoire avant de quitter ?? bizarre..j'ai quand même fait le test, erreur quand j'arrive sur le Classeur.Close True puisque le classeur ne représente rien !
mercredi 11 mars 2009 à 19:45:36 | Re : Fermer complètement Excel

Orohena


Bonjour

Bien que pour l'utilisateur une même instance d'Excel permette l'ouverture de plusieurs classeurs, ce qui est une caractéristique des applications MDI (Multiple Document), Excel est une application SDI (Single Document) qui nécessite une instance par classeur.

Par conséquent, la méthode Quit ne ferme que l'instance ouverte par ta macro et ne ferme pas les autres instances.

D'après moi, ton code n'est pas en cause. L'instance qui reste en mémoire après ta macro n'est a priori pas celle que tu as créée dans ta macro. Fais le test suivant :

1) vérifie dans le gestionnaire des tâches que tu n'as aucune instance d'Excel en mémoire (fais le nettoyage si nécessaire)
2) exécute ta macro une fois puis revérifie. Quel est le résultat ?

Amicalement

PS : pour dessaouler la mémoire, deux Alka Selzer, un sac de glace sur le front, et hop, au dodo !

1 2

Cette discussion est classée dans : set, excel, fermer, xlapp, classeur


Répondre à ce message

Sujets en rapport avec ce message

Problème lors d'instructions envoyé a excel [ par KatmandouJah ] Bonjour,   J'ai ecris un module chargée d'ouvrir un classeur Excel existant, de creer un autre classeur et de copier une partie du contenu du classeur données access dans un classeur excel [ par doro81079 ] Bonjour, j'ai un problème avec une boucle dans access pour remplir un classeur excel si quelqu'un pouvait m'éclairer ce serait cool svp Donc voilà données access dans un classeur excel [ par doro81079 ] Bonjour, j'ai un problème avec une boucle dans access pour remplir un classeur excel si quelqu'un pouvait m'éclairer ce serait cool svp Donc voilà chart [ par Chuy ] Bonsoir, je voudrais ouvrir un graphique excel dans mon application vb6. J'ai trouvé une petite aide qui m'explique comment faire, mais à la fin vb me graph excel sous vb6 [ par S4ngo ] Bonsoir, je voudrais ouvrir un graphique excel dans mon application vb6. J'ai trouvé une petite aide qui m'explique comment faire, mais à la fin vb m excel sous vb6 [ par S4ngo ] Bonsoir, je voudrais ouvrir un graphique excel dans mon application vb6. J'ai trouvé une petite aide qui m'explique comment faire, mais à la fin vb m copie feuille vers un nouveau classeur et sauvegarde de ce nouveau classeur [ par nanie12 ] Bonjour Je voudrais copier un onglet du classeur Excel "contrat" dans un autre classeur excel et enregistrer ce nouveau classeur sous le nom : nom+pr Selection de classeurs excel [ par Xweyn ] Donc a priori (premiere prog sous vb excel) g un objet Excel dont 3 classeursDim xls As Excel.ApplicationDim Work1 As Excel.WorkbookDim Work2 As Excel aide sur une fonction simple... [ par alpking ] bonjour, je voulais savoir pourquoi cette fonction qui doit écrire "1" dans une cellule ne marche pas ? Qu'est ce que j'ai fait de faux ? Quand je l' vb 6 excel [ par wrndid ] bonjour jr voudrais savoir comment faire pour eviter de valider la sauvegarde du fichier excel sous vb6voici mon sourcemerciPrivate Sub Command2_Click


Nos sponsors


Sondage...

Comparez les prix

CalendriCode

Septembre 2010
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
27282930   

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,374 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales