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 :

Ajouter une progress bar ou simple fenetre indicateur de macro en cours


Sujet :

Macros et VBA Excel

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de yaya_la_rafale
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 92
    Par défaut Ajouter une progress bar ou simple fenetre indicateur de macro en cours
    Bonjour,
    j'ai une macro qui prend du temps à s'executer.
    Je voudrais informer l'utilisateur que la macro est en train de jouer, puis fini.
    L'utilisateur doit attendre.

    j'ai trouvé le code suivant qui fonctionne mais pas chez moi
    j'obtiens une erreur 424, objet recquis sur UserForm1
    mais c'est quoi ce userform1 ? le nom de ma feuille ?
    question basique desolee, mùais je ne comprend pas ?

    merci d'avance

    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
     
    'Pour Barre de progression
    Public xCompteurX As Variant
    Public xPour100X As Single
     
    sub magrossemacro()
        UserForm1.Show vbModeless 'Affiche Barreprogression dans état modeless
        xCompteurX = 0
     
    'dans ma boucle
         Call BarreDeProgression
    'fin ma boucle
     
    End Sub
     
    Sub BarreDeProgression()
        Application.ScreenUpdating = False
        xCompteurX = xCompteurX + 5 'Le nombre est à régler en fonction de votre routine. De la durée de votre routine
                                    'En lieu et place de 5 vous pouvez mettre 1 ou 2 ou 3.5 ou 12 ou 7.1 ou 20 etc..
        xPour100X = xCompteurX / 100
        With UserForm1
            .FrameProgress.Caption = Format(xPour100X, "0%")
            .LabelProgress.Width = xPour100X * (.FrameProgress.Width - 10)
        End With
        DoEvents 'L'instruction DoEvents est responsable de la mise à jour de l'Userform
    End Sub

  2. #2
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  3. #3
    Membre confirmé Avatar de yaya_la_rafale
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 92
    Par défaut
    merci patricktoulon bien ta progress bar, mais trop pour moi.

    le truc est que j'essaie de laisser mon code le plus simple possible, de coder le moins possible et d'utiliser du natif.
    Si j'arrivais simplement a comprendre ce que UserForm1 est, je n'aurai qu'une ligne à adapter, et beaucoup moins de code.
    je continue mes recherches mais merci de ton idée.

  4. #4
    Inactif  

    Homme Profil pro
    cuisiniste
    Inscrit en
    Avril 2009
    Messages
    15 374
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : cuisiniste
    Secteur : Bâtiment

    Informations forums :
    Inscription : Avril 2009
    Messages : 15 374
    Billets dans le blog
    8
    Par défaut re
    re
    soit comme tu veux
    peut etre que cet exemple t'apportera la lumiere
    il y a 2 userfoms en exemple
    l'un avec un label qui me sert de progressbar
    et l'autre avec un vrai control progressbar
    ya pas plus simple comme code
    mes fichiers dans les contributions:
    mail avec CDO en vba et mail avec CDO en vbs dans un HTA
    survol des bouton dans userform
    prendre un cliché d'un range

    si ton problème est résolu n'oublie pas de pointer : : ça peut servir aux autres
    et n'oublie pas de voter

  5. #5
    Membre confirmé Avatar de yaya_la_rafale
    Profil pro
    Inscrit en
    Avril 2010
    Messages
    92
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2010
    Messages : 92
    Par défaut
    merci.
    ton code marche bien dans ton fichier.
    J'ai copié ta sub TESTBARRE1 dans mon fichier, et je l'appelle depuis ma fonction, et là pareil, erreur 424 sur
    "With UserForm1
    .Show 0"

    dois je initialiser ce UserForm1, c'est quoi ? mon fichier ? ma feuille ? c'est très abstrait pour moi..
    désolée, ce doit être basique mais je bloque :'(

  6. #6
    Expert éminent


    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
    Par défaut
    bonjour,

    tiens un peu de lecture sur les UserForm devrais t'aider :

    http://silkyroad.developpez.com/VBA/UserForm/

Discussions similaires

  1. Ajout d'une progress bar lors d'un rafraichissement
    Par Mimosa777 dans le forum Macros et VBA Excel
    Réponses: 20
    Dernier message: 16/04/2008, 15h01
  2. [winAPI] Comment créer une progress bar ownerdraw ?
    Par kidpaddle2 dans le forum Windows
    Réponses: 1
    Dernier message: 01/08/2006, 11h02
  3. [MFC] Utilisation d'une progress bar
    Par nmarf dans le forum MFC
    Réponses: 2
    Dernier message: 12/09/2005, 10h42
  4. [VB.NET] Mise en place d'une progress bar
    Par Hoegaarden dans le forum Windows Forms
    Réponses: 14
    Dernier message: 19/10/2004, 09h23

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