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

Access Discussion :

Probleme de fermeture Excel


Sujet :

Access

  1. #1
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut Probleme de fermeture Excel
    Bonjour,

    Comme le dit le titre, j'ai un probleme avec un processus excel qui reste actif meme apres avoir execute les commandes pour liberer la memoire et fermer l'application.
    Je travaille sous Access 2000.
    Ma procedure permet a partir d'un nom de fichier excel passe en parametre d'ouvrir ce fichier, d'en extraire les images au format JPG et de les placer dans un dossier passe lui aussi en parametre. Voila le code
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
     
    Public Sub save_picture(pathfile As String, folder As String)
    On Error GoTo error_sub
        Dim excelwk As Excel.Workbook
        Dim sheet As Excel.Worksheet
        Dim sh As Excel.Shape
        Dim pictu As IPictureDisp
        Dim name As String
        Dim excelapp As Excel.Application
     
     
    DoCmd.SetWarnings False
     
    Set excelapp = Excel.Application
    Set excelwk = excelapp.Workbooks.Open(pathfile)
    Set sheet = excelwk.Sheets(2)
    sheet.Activate
     
        With sheet
            For Each sh In sheet.Shapes
                sh.CopyPicture xlScreen, xlBitmap
                Set pictu = PastePicture(xlBitmap)
                name = sheet.Cells(sh.TopLeftCell.Row, 1).Value
                name = Excel.WorksheetFunction.Clean(name)
                SavePicture pictu, folder & name & ".jpg"
            Next sh
        End With
     
    exit_sub:
        excelwk.Close (True)
        excelapp.Workbooks.Close
        Set sheet = Nothing
        Set excelwk = Nothing
        Set sh = Nothing
        excelapp.Quit
        Set excelapp = Nothing
     
     
        DoCmd.SetWarnings True
        Exit Sub
    error_sub:
        MsgBox (Err.Description)
        Resume exit_sub
    Le probleme c'est que une fois cette procedure terminee, j'ai toujours un processus Excel qui tourne... et forcement, apres avoir execute plusieurs fois cette procedure, ca plante !
    J'ai passe pas mal de temps ce matin sur le forum, essaye plusieurs choses, mais je n'arrive toujours pas a "killer" ce processus.
    Est ce que quelqu'un pourrait m'aider s'il vous plait ?
    Merci d'avance !

    Julie

  2. #2
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    slt,

    essaye de mettre
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    excelapp.visible = true
    le temps de debugger pour voir si tu n'as pas une popup à la fermeture d'excel qui attend une réponse

  3. #3
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Coucou
    D'abord merci mille fois de t'interesser a mon probleme !
    J'ai fait ce que tu m'as dit et ensuite execute la procedure en pas-a-pas... malheureusement, il ferme bien la fenetre excel, mais le processus est toujours la !!
    Merci encore

  4. #4
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    essaye de libérer ton objet <pictu>, il doit rester un lien vers cet objet qui empêche de fermer le processus

  5. #5
    Membre éclairé
    Profil pro
    Inscrit en
    Décembre 2005
    Messages
    710
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Décembre 2005
    Messages : 710
    Points : 847
    Points
    847
    Par défaut
    C'est bizzard, hier beurnoir avait le même pb (cf le post :http://www.developpez.net/forums/viewtopic.php?t=432287).
    Mais lui ne faisait pas Quand je lui ai dis de le faire il a mis un flag "Résolu" : ça doit donc fonctionner.

    En pas à pas tu executes bien cette ligne (pas d'erreur) ?

  6. #6
    Nouveau Candidat au Club
    Inscrit en
    Juillet 2005
    Messages
    3
    Détails du profil
    Informations forums :
    Inscription : Juillet 2005
    Messages : 3
    Points : 1
    Points
    1
    Par défaut
    Bonjour,

    Desolee pour le temps de reponse un peu lent..

    Bon alors, pour Arkham46, j'ai bien essaye de faire ce que tu m'as dit mais aucun changement.

    J'ai aussi regarde le post de beurnoir, mais ca ne m'a pas beaucoup aidee. Par contre je me pose une question. Est ce que :
    est pareil que
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    excelapp.Application.Quit
    ?
    Je doute que ca m'aide beaucoup, mais au moins ca pourrait satisfaire ma curiosite
    Merci de votre aide !
    Julie

  7. #7
    Responsable Access

    Avatar de Arkham46
    Profil pro
    Inscrit en
    Septembre 2003
    Messages
    5 865
    Détails du profil
    Informations personnelles :
    Localisation : France, Loiret (Centre)

    Informations forums :
    Inscription : Septembre 2003
    Messages : 5 865
    Points : 14 526
    Points
    14 526
    Par défaut
    slt,

    excelapp est déjà un objet application, donc excelapp.application c'est l'application de l'application ça a peu de sens.

    apparemment il te manque le mot clé NEW pour créer l'objet excel :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Set excelapp = New Excel.Application
    :

Discussions similaires

  1. probleme de fermeture d'excel
    Par passie dans le forum Access
    Réponses: 2
    Dernier message: 08/11/2005, 19h34
  2. petit probleme avec automation Excel
    Par Tempotpo dans le forum API, COM et SDKs
    Réponses: 6
    Dernier message: 05/08/2005, 08h57
  3. [Session]Problème de fermeture de session
    Par july dans le forum Servlets/JSP
    Réponses: 4
    Dernier message: 16/06/2005, 12h25
  4. [TP] Problème de fermeture Turbo Pascal
    Par Aezar dans le forum Turbo Pascal
    Réponses: 10
    Dernier message: 22/05/2005, 10h24
  5. [Linux] Probleme de fermeture de Sockets
    Par diefo dans le forum Réseau
    Réponses: 6
    Dernier message: 30/12/2003, 13h10

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