IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Macros et VBA Excel Discussion :

Lors de la fermeture d'Excel le processus reste actif [XL-2007]


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut Lors de la fermeture d'Excel le processus reste actif
    Bonjour à tous,

    J'ai écrit un programme en VBA sous Access (2007) pour ouvrir et fermer des document en Excel (2007), je constate que quand je ferme le fichier en le sauvegardant soir avec l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    xlBook.Save
    xlApp.Quit
    ou bien avec l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    xlBook.Close True
    xlApp.Quit
    alors il enregistre bien, se ferme MAIS il reste toujours un processus Excel sur le gestionnaire de tâche.

    En revanche, lorsque je ferme le fichier en Excel (2007) sans l'enregistrer avec l'instruction :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    xlBook.Saved = True
    xlApp.Quit
    alors il n'y a pas de processus "résiduel".

    Comment faire pour avoir la même chose au niveau de la fermeture avec enregistrement (pour qu'il n'y ait plus de processus résiduel).

    Merci d'avance !

  2. #2
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Bonjour,

    Qu'est-ce qui se passe si tu mets :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    xlBook.Save
    xlBook.Saved = True
    xlApp.Quit

  3. #3
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut
    J'ai déjà essayé.
    Il me mets la même chose que si je n'avais pas mis la deuxième des 3 lignes !

  4. #4
    Expert confirmé
    Avatar de Didier Gonard
    Homme Profil pro
    Formateur Office et développeur VBA en freelance
    Inscrit en
    Février 2008
    Messages
    2 805
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations professionnelles :
    Activité : Formateur Office et développeur VBA en freelance

    Informations forums :
    Inscription : Février 2008
    Messages : 2 805
    Par défaut
    Bonjour,

    vérification de base :

    si tu mets un point d'arrêt avant ton code final et que tu regardes le gestionnaire, tu as combien d'instances Excel ouvertes ?

    cordialement,

    Didier

  5. #5
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut
    Dans les deux cas : fermeture avec enregistrement ou sans enregistrer,
    il y a un processus Excel créé
    et dans le cas de "avec enregistrement", il n'est jamais "tué" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    xlBook.Save
    xlApp.Quit
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    dans le cas des sans enregistrement, il est "tué" :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    xlBook.Saved = True
    xlApp.Quit
    Set xlSheet = Nothing
    Set xlBook = Nothing
    Set xlApp = Nothing
    !!

  6. #6
    Expert confirmé
    Homme Profil pro
    aucune
    Inscrit en
    Septembre 2011
    Messages
    8 208
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : aucune

    Informations forums :
    Inscription : Septembre 2011
    Messages : 8 208
    Par défaut
    Peut-être, ajoute un :

    avant

    pour lui laisser le temps d'enregistrer.

  7. #7
    Membre averti
    Inscrit en
    Décembre 2007
    Messages
    39
    Détails du profil
    Informations forums :
    Inscription : Décembre 2007
    Messages : 39
    Par défaut
    Je n'ai pas la propriété DoEvents sur xlApp !

    J'avais essayé une avant
    ...

    Sinon, au départ, j'ai fait ça

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
     Dim xlApp As Excel.Application
        Dim xlSheet As Excel.Worksheet
        Dim xlBook As Excel.Workbook
     
        'J'initialise mes variables
        Set xlApp = CreateObject("Excel.Application")
        Set xlBook = xlApp.Workbooks.Open("D:\projet.xlsm")
        Set xlSheet = xlBook.Worksheets("root")

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [XL-2007] Archivage et mise a zero lors de la fermeture d'excel
    Par jojo6691 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 14/06/2012, 17h08
  2. [XL-2007] Processus Excel.exe qui reste actif
    Par Neowile dans le forum Macros et VBA Excel
    Réponses: 19
    Dernier message: 16/02/2012, 15h50
  3. Processus Excel.exe qui reste actif
    Par siuol dans le forum Macros et VBA Excel
    Réponses: 14
    Dernier message: 18/04/2011, 19h26
  4. [AC-2000] Création fichier Excel et processus toujours actif
    Par moustika dans le forum VBA Access
    Réponses: 6
    Dernier message: 22/02/2011, 04h18
  5. Pb lors de la fermeture d'une feuille excel
    Par justin92330 dans le forum Macros et VBA Excel
    Réponses: 2
    Dernier message: 30/07/2008, 12h01

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo