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 :

[VBA-E] fermeture de fichier et curseur de souris


Sujet :

Macros et VBA Excel

  1. #1
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut [VBA-E] fermeture de fichier et curseur de souris
    Bonjour,

    J'utilise

    ActiveWorkbook.close

    pour fermer mon classeur Excel à la fin de ma macro.
    Le probleme est que quand le claseur se ferme, le curseur de la souris reste sur le sablier qui tourne...
    Quand j'ouvre un nouveau claseur, le curseur de la souris reste toujours sous la forme de sablier tournant et seul une fermeture complete et réouverture d'Excel permet de retrouver un pointeur normal.

    Merci de votre aide

    Cordialement,

  2. #2
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 128
    Points : 12 185
    Points
    12 185
    Billets dans le blog
    5
    Par défaut
    Bonjour,

    Peut-on voir le code de ton appel ?

    Argy

  3. #3
    Futur Membre du Club
    Inscrit en
    Août 2006
    Messages
    6
    Détails du profil
    Informations forums :
    Inscription : Août 2006
    Messages : 6
    Points : 5
    Points
    5
    Par défaut
    En fait, je pars d'un fichier modele (workbook BW datawarehouse SAP) et je mets à jour un query. La macro est contenue dans ce workbook. La macro effectue un tri des lignes de données obtenues et elle enregistre le resultat dans un nouveau classeur qui est fermé avec création.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
           ChDir "F:\SupplyChain\stock du jour"
        ActiveWorkbook.SaveAs Filename:= _
            nomfichier _
            , FileFormat:=xlNormal, Password:="", WriteResPassword:="", _
            ReadOnlyRecommended:=False, CreateBackup:=False
     
        ActiveWorkbook.Close (False)
    Une fois le nouveau classeur fermé, je reviens donc par defaut sur mon fichier modele et j'affiche une boite de dilogue pour demander si il faut fermer ce fichier modele.....
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Sheets("Stock").Select
     
    fermeture = MsgBox(Chr$(13) & "    Traitement terminé. Le fichier est prêt à être zippé." & Chr$(13) & "Fermer le workbook ?" & Chr$(13) , vbYesNo, "traitement terminé")
        If fermeture = vbNo Then
            End
        End If
     
    ActiveWorkbook.Close (False)
    End Sub
    La macro parvient bien à fermer le fichier modele mais le curseur de souris reste sous forme de sablier qui tourne..... seule la fermeture complete d'excel permet de revnir à un curseur normal....

    Voila,

    Merci à tous de votre aide precieuse,

    Cordialement,

  4. #4
    Expert éminent sénior


    Profil pro
    Inscrit en
    Juin 2003
    Messages
    14 008
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2003
    Messages : 14 008
    Points : 20 040
    Points
    20 040
    Par défaut
    essai de rajouter

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Application.Cursor =xlDefault
    en fin de code..

  5. #5
    Rédacteur/Modérateur
    Avatar de argyronet
    Homme Profil pro
    Panseur de bobos en solutions ETL
    Inscrit en
    Mai 2004
    Messages
    5 128
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Panseur de bobos en solutions ETL
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2004
    Messages : 5 128
    Points : 12 185
    Points
    12 185
    Billets dans le blog
    5
    Par défaut
    En théorie, lorsque tu ouvres un nouveau classeur fondé sur un XLT, le XLT n'est pas censé être ouvert...
    De ce fait, je ne comprends pas pourquoi tu poses la question de savoir si l'utilisateur veut également fermer le modèle.
    L'instance Excel doit à ce moment précis comporter qu'un seul classeur, nommé Classeur1 sans extension si c'est une 1ère instance et incrémenté de 1 si tu fais plusieurs opérations de création de classeurs à la suite...
    Lorsque tu ouvres ce classeur, il se peut qu'un sablier apparaisse puis disparaisse selon l'emplacement du modèle (local ou réseau).
    Du fait que tu ne sembles pas utiliser l'instruction qui change le pointeur, c'est qu'il y a quelque chose qui traine dans ton code.
    La solution de BBil est un paliatif mais n'explique rien...
    As-tu vérifié que tu n'as pas plusieurs instances d'Excel des les processus ?

    D'autre part, il faut que tu apprennes à simplifier ton code:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    ActiveWorkbook.SaveAs "F:\SupplyChain\stock du jour\" & strNomFichier
    ActiveWorkbook.Close False
    Est-ce que ton code est complet là ? Non, il me semble...
    Est-ce qu'Excel est lancé depuis une autre application ?

    Argy

Discussions similaires

  1. [OL-2010] Fermeture de fichier PST par VBA
    Par dede_bo dans le forum VBA Outlook
    Réponses: 20
    Dernier message: 16/06/2015, 16h34
  2. Fermeture de fichier txt via vba
    Par Kutoh dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 02/07/2013, 12h32
  3. [XL-2007] Erreur VBA de 2003 à 2007, seulement après fermeture du fichier
    Par efesdark dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 08/07/2011, 12h17
  4. [VBA-Word] lancement de macro à la fermeture de fichier
    Par perophron dans le forum VBA Word
    Réponses: 2
    Dernier message: 22/06/2007, 15h32
  5. [VBA-E] Macro ouverture fichier déja ouvert
    Par bhaal76 dans le forum Macros et VBA Excel
    Réponses: 4
    Dernier message: 18/12/2002, 14h30

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