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 :

EXCEL VBA - Créer une barre de progression


Sujet :

Macros et VBA Excel

  1. #1
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut EXCEL VBA - Créer une barre de progression
    Bonjour tout le monde,

    Je cherche à réaliser une progressbar à insérer dans une boucle de suppression de lignes sur plusieurs feuilles (je cherche à supprimer les lignes présentant une erreur dans la plage G à L sur toutes les feuilles, j'ai simplifié le fichier exemple, en réalité j'ai une 30aine de feuilles dans mon classseur). J'ai trouvé des exemples de progressbar sur le forum et je les ai adaptés à mon cas.
    La progressbar s'affiche et défile normalement mais la fin coince et j'ai un message d'erreur :
    Erreur d’exécution ‘5’ Argument ou appel de procédure incorrect.
    L'erreur concerne ce bout de code :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    .LabelProgress.BackColor = RGB(0, PctColor / 3, PctColor)
    Je n'arrive pas à déterminer le nombre max de lignes à supprimer. J'ai mis 8000au hasard. Je pense que le problème vient de là.

    Quelqu'un aurait-il une idée ?

    Merci d'avance à tous pour vos idées.
    Fichiers attachés Fichiers attachés

  2. #2
    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
    Points : 15 543
    Points
    15 543
    Par défaut
    Sans ouvrir ton fichier, teste déjà en remplaçant PctColor / 3 par
    Int(PctColor / 3)
    Bonne journée

  3. #3
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonsoir,

    J'ai testé la solution proposée. En plus, j'ai rajouté quelques tests en colonne Z pour identifier les cellules présentant une erreur. Sur la dernière feuille, j'ai une cellule en S1 qui reprend le total des cellules à traiter du classeur que j'ai placé dans le code. Désormais, la macro se termine normalement au bout de 4essais. Lors des premiers essais, la barre de progression n'évolue plus à compter de 90-92%. Elle se fige à ce niveau d'avancement et disparaît à la fin de la macro. C'est après avoir lancé 4 à 5 fois le fichier que la barre termine sa course normalement à 100%. Bizarre le truc??

    Merci d'avance à ceux qui aurait le temps de jeter un coup d'oeil. Je bloque actuellement dessus.
    Fichiers attachés Fichiers attachés

  4. #4
    Membre actif
    Inscrit en
    Février 2008
    Messages
    208
    Détails du profil
    Informations forums :
    Inscription : Février 2008
    Messages : 208
    Points : 246
    Points
    246
    Par défaut
    bonjour

    j'ai testé et ça fonctionne très bien.
    Pour vérifier que ta barre affiche bien les 100% ajoute temporairement un stop dans la sub "Main". Ainsi en consultant la feuille, tu auras une vision figée de la barre d'avancement.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    Next r
    
    Call UpdateProgress(1)
    Stop
    Unload UserForm1
    
    Application.ScreenUpdating = True
    
    End Sub
    à plus

  5. #5
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    @ babacool: Pas utile de déposer tant de fichiers sur le serveur. Il y a déjà une source sur DVP. Si ce n'est pas la même référence que celle qui t'a inspirée, tu la mentionne. Et ce serait plus utile que tu mettes le code qui te pose problème.

    zaza pas contente.

  6. #6
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonsoir,

    Le Pierre, c'est très curieux, chez moi la barre de progression s'arrête à 73% aujourd'hui. Au bout de deux lancements, les 100% s'affichent correctement.
    Je ne comprends pas le pb. Je voulais tester une barre de progression car ç'est rigolo et esthétique, cela n'est pas concluant pour un début.

    Zaza, je comprends ta remarque mais je n'avais pas l'intention de flooder le forum et il me semble qu'un exemple est toujours plus parlant lorsqu'on demande de l'aide. Sur d'autres forums, certains demandent systématiquement de joindre un fichier pour bien comprendre. Chaque forum ses codes de conduite. J'ai bien saisi le vôtre.
    PS : mon fichier exemple n'est pas le même que celui de ton lien.

    @+

  7. #7
    Expert confirmé
    Avatar de zazaraignée
    Profil pro
    Étudiant
    Inscrit en
    Février 2004
    Messages
    3 174
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2004
    Messages : 3 174
    Points : 4 085
    Points
    4 085
    Par défaut
    Un exemple, oui! pas tout le fichier!

  8. #8
    Candidat au Club
    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    5
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2006
    Messages : 5
    Points : 2
    Points
    2
    Par défaut
    Bonjour le forum,

    Zaza, sans vouloir polémiquer et loin de moi cette intention, c'est bien un fichier exemple que j'ai posté et non pas le fichier entier qui comporte plus de 30 onglets et pèse quelques mo.

    Merci à ceux qui ont apporté leur aide. Je vais m'essayer à d'autres tests de barre de progression.

    @+

  9. #9
    Expert éminent
    Avatar de fring
    Homme Profil pro
    Engineering
    Inscrit en
    Février 2008
    Messages
    3 900
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : Belgique

    Informations professionnelles :
    Activité : Engineering

    Informations forums :
    Inscription : Février 2008
    Messages : 3 900
    Points : 7 964
    Points
    7 964
    Par défaut
    Bonjour,

    Ya celle-ci éventuellement, sans passer par un UserForm
    LES FAQ OFFICE - LES COURS OFFICE - LES COURS EXCEL - LES LIVRES OFFICE - SOURCES VBA - ATELIER BRICOLAGE VBA

    Lorsque votre problème est solutionné, pensez à le signaler en cliquant sur le bouton au bas de la discussion.

Discussions similaires

  1. [Win32] Créer une barre de progression
    Par stephan1609 dans le forum Bibliothèques
    Réponses: 2
    Dernier message: 13/09/2012, 13h17
  2. Réponses: 3
    Dernier message: 12/01/2010, 10h26
  3. Créer une barre de progression
    Par Downhill6 dans le forum VB 6 et antérieur
    Réponses: 1
    Dernier message: 25/03/2009, 17h35
  4. Créer une barre de progression avec "stop/pause"
    Par davos56 dans le forum Delphi
    Réponses: 7
    Dernier message: 22/05/2007, 17h59
  5. Créer une barre de progression sous Vba ??
    Par Deejoh dans le forum Général VBA
    Réponses: 7
    Dernier message: 17/10/2005, 15h05

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