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 :

Pourquoi ma macro s'execute lentement ?


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Nouveau candidat au Club
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    1
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Octobre 2008
    Messages : 1
    Par défaut Pourquoi ma macro s'execute lentement ?
    Bonjour,

    Je viens de terminer ma macro en VBA sur excel 2003.
    Son execution au debut etait rapide, elle réalisait diverses operations d'une page à l'autre en quelques secondes et depuis aujourd'hui...elle marche toujours mais au ralenti. Elle prend bien 1 minute pour faire ce qu'elle faisait avant en 5 secondes.

    J'avais déjà connu ce genre de ralentissement avec une autre procédure.
    Je ne sais pas pourquoi...

    Quelqu'un peut-il m'aider ?

    Thomas

  2. #2
    Invité
    Invité(e)
    Par défaut
    Bonjour et bienvenue sur le forum Office de DVP.

    Cela va être dur de te répondre, en effet les réponses peuvent être multiples, et tu ne nous aide pas beaucoup, car tu ne nous dis pas ce qu'elle fait, et tu ne nous donnes pas le code fautif.

    Philippe

  3. #3
    Inactif  
    Avatar de ouskel'n'or
    Profil pro
    Inscrit en
    Février 2005
    Messages
    12 464
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2005
    Messages : 12 464
    Par défaut
    +1
    En outre, ce problème peut être lié à Windows, à ton anti-virus, à une mise à jour, à un virus... Bref, sans connaître l'environnement de ta machine... ?!?

  4. #4
    Membre émérite
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    753
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 753
    Par défaut
    Personnellement ça m'est déjà arrivé, en bien pire en plus.

    Je pense que c'est tout simplement Excel qui desfois décide de buguer pendant quelques temps (quelques minutes, ou quelques jours même avec extinction de l'ordi entretemps). Pour ma part ça ne se limitait pas seulement aux macros (à mon détriment).
    Mais il se peut également comme te l'ont dit philippe et ouskel'n'or qu'il s'agisse de Windows ou de tout autre programme qui a décidé de te mettre des batons dans les roues.

    Bref, si tu n'as absolument rien touché depuis avant, c'est pas de la faute de ton programme si ça plante.

  5. #5
    Membre éprouvé Avatar de DidierLoche
    Profil pro
    Inscrit en
    Octobre 2008
    Messages
    84
    Détails du profil
    Informations personnelles :
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Octobre 2008
    Messages : 84
    Par défaut
    Bonjour,

    J'ai connu le même soucis.
    Dans mes feuilles Excel, certaines cellules font appel à des fonctions qu'Excel cherche à mettre à jour à chaque fois que VBA modifie les feuilles.
    Pour éviter cela, il suffit de passer en mode calcul manuel en début de macro et revenir au mode calcul automatique en fin de macro. A cela, tu ajoutes un screenupdate=false puis true en fin de macro et ça amélriore nettement le temps de calcul. Cela donne ceci :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
        Application.ScreenUpdating = False
        Application.Calculation = xlCalculationManual
        ......
        ......
        Application.Calculation = xlCalculationAutomatic
        Application.ScreenUpdating = True
    Essaie cela et dis-nous si ça a résolu ton problème.

    Didier

  6. #6
    Membre émérite
    Avatar de fred65200
    Profil pro
    Inscrit en
    Septembre 2007
    Messages
    901
    Détails du profil
    Informations personnelles :
    Âge : 58
    Localisation : France

    Informations forums :
    Inscription : Septembre 2007
    Messages : 901
    Par défaut
    bonjour à tous

    personnellement j'écrirais plutôt
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Dim Calc As Integer
    Application.ScreenUpdating = False
     
        Calc = Application.Calculation
        Application.Calculation = xlCalculationManual
        '......
        '......
        Application.Calculation = Calc
        Application.ScreenUpdating = True
    au cas ou le mode de calcul ne soit pas en automatique



    Cordialement

Discussions similaires

  1. Réponses: 8
    Dernier message: 25/11/2011, 15h18
  2. [XL-2007] Macro s'execute en fonction d'heure
    Par tsrsi2006 dans le forum Macros et VBA Excel
    Réponses: 6
    Dernier message: 13/09/2011, 19h56
  3. [XL-2003] ne pas "voir" la macro s'executer
    Par djoumusic dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 07/02/2010, 22h10
  4. Réponses: 6
    Dernier message: 09/10/2009, 16h54
  5. Réponses: 5
    Dernier message: 12/03/2006, 20h40

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