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 :

Avancement d'une macro - For each - Progressbar


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 622
    Par défaut Avancement d'une macro - For each - Progressbar
    Bonjour,


    Dans un programme Excel, à un moment j'ai une boucle du style :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    For Each c In Ma_Plage
    ...
    Next


    J'aimerai bien avoir un visu de l'avancement de la macro...
    Une progressbar, ou info dans statusbar... peux importe... ça ce n'est pas mon problème.


    Mon problème est le suivant....

    Dans la boucle comment savoir à quel position on se trouve et sur combien en tout !?


    Merci

    A+

    Dams'

  2. #2
    Membre averti
    Profil pro
    Étudiant
    Inscrit en
    Décembre 2010
    Messages
    48
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Décembre 2010
    Messages : 48
    Par défaut
    Si tu peux représenter Ma_Plage par un nombre


    avant ton next tu mets par exemple
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    If i = Ma_PalgeNombre * 0.5 then
          ValeurPB =0.5
          UpdateProgressBar ValeurPB
    end if
    i=i+1

  3. #3
    Membre éclairé
    Homme Profil pro
    Inscrit en
    Juin 2006
    Messages
    622
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Juin 2006
    Messages : 622
    Par défaut
    Ma_Plage est en fait de type Range et correspond à une plage de cellules

  4. #4
    Expert confirmé Avatar de casefayere
    Homme Profil pro
    RETRAITE
    Inscrit en
    Décembre 2006
    Messages
    5 138
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 71
    Localisation : France, Ardennes (Champagne Ardenne)

    Informations professionnelles :
    Activité : RETRAITE
    Secteur : Agroalimentaire - Agriculture

    Informations forums :
    Inscription : Décembre 2006
    Messages : 5 138
    Par défaut
    Bonsoir,

    Une idée parmi d'autres :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    barimp.Show 'un USF comprenant ProgressBar
    barimp.ProgressBar1.Min = 1: barimp.ProgressBar1.Max = 300 'un chiffre représentant le nombre de cellules à parcourir
    barimp.Repaint
    For Each c In Ma_Plage
    ...
    barimp.ProgressBar1 = barimp.ProgressBar1 + 1
    Next
    attention l'Usf doit etre non modal.

    Tu peux ajouter un Label sur l'Usf et voir l'avancement au niveau des cellules,

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ....
    barimp.ProgressBar1 = barimp.ProgressBar1 + 1
    barimp.label1 = c.address
    barimp.repaint
    mais ça ira vite
    Next
    Next
    Cordialement,
    Dom
    _____________________________________________
    Vous êtes nouveau ? pour baliser votre code, cliquer sur cet exemple : Anomaly
    pensez à cliquer sur :resolu: si votre problème l'est
    Par contre, il est désagréable de voir une discussion résolue sans message final du demandeur (satisfaction, désarroi, remerciement, conclusion...)

Discussions similaires

  1. [XL-2003] Faire un somme dans une boucle for each
    Par tools dans le forum Macros et VBA Excel
    Réponses: 11
    Dernier message: 31/01/2011, 08h36
  2. trié des date avec une boucle for each
    Par alex santus dans le forum Macros et VBA Excel
    Réponses: 13
    Dernier message: 03/09/2009, 11h00
  3. test avant d'entrer dans une boucle For each cell in selection
    Par totoro02 dans le forum Macros et VBA Excel
    Réponses: 7
    Dernier message: 13/01/2009, 09h27
  4. comment effacer un element dans un collection dans une boucle for each
    Par medkarim dans le forum VB 6 et antérieur
    Réponses: 6
    Dernier message: 17/10/2008, 12h48
  5. [VBA-E]PB sur une boucle for each next
    Par rond24 dans le forum Macros et VBA Excel
    Réponses: 9
    Dernier message: 31/07/2006, 15h47

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