Bonjour à toutes et tous. Habituellement j'arrive à trouver mon bonheur au travers des différentes discussions que je trouve sur ce forum.
Mais cette fois ci je n'y arrive pas, ou disons que je ne sais pas trop comment adapter ce que j'ai trouvé à ma situation.
Donc je me permet de créer cette discussion, afin de voir si qq'un peut m'aider dans ma recherche.
Le sujet est le suivant: A partir du fichier (voir fichier joint) que j'ai adapté à ma situation, celui ci crée des fichiers excel en fonction de ma base de donnée d'une feuille.
Au total, il y aura 24 fichiers (classeurs) à créer, avec chacun 2 feuilles remplies suivant 2 feuilles de données.
Bref ceci pour donner un peu le contexte, mais sur cette partie j'arrive à ce que cela fonctionne.
Ma question est que quand je click sur le bouton Test, cela lance la création de fichiers (23 dans mon exemple) et cela prends un peu de temps, mais surtout on ne voit pas ou cela en est ! Donc est ce possible de créer un barre de progression, ou d'afficher dans le statubar d'excel, l'état d'avancement de la création de ces nouveaux fichiers ?
Je vous mets en pièce jointe mon fichier qui m'a servi de base.
Je vous remercie pour vos réponses.
Bonne journée.
Bonjour babastioun, Fanfan,
Des progressbar, vous en trouverez une multitude alors difficile de choisir.
Un essai en PJ avec le status bar et un progressbar pour l'exemple.
Statusbar :
Bonjour Fanfan38, quelle rapidité. C'est tout à fait ce que je cherchais !
Après qq copier/coller, ça fonctionne super bien dans mon fichier final.
Je te remercie énormément pour cette aide.
Quand on voit le résultat du code que tu m'as fait, cela semble simple, mais je n'aurai pas su m'en sortir ainsi. Tous ce que j'ai pu trouvé, ressemblaient à une usine à gaz !!!
Si toutefois tu as un peu de temps, pour mes connaissances personnel, est ce que tu pourrais me faire une petite traduction du code associé au userform, que j'essaye de comprendre la logique ?
Et aussi quelles sont les propriétés des éléments du userform qu'il faut avoir paramétrés ?
Parce que à la lecture du code, pour le moment je saisie pas le truc !
Je te remercie.
Bonne journée à toi.
Alors effectivement,un simple msgbox aurait pu suffire, mais j'y ai pas pensé !
Toutefois, comme la solution fanfan38, la tienne est forte intéressante aussi, avec l'affichage au fur et a mesure de ce qui s'enregistre.
Je vais voir ça, en tout cas un grand merci à vous tous, je vais pouvoir clore cette discussion comme résolue, mais je sais pas comment faire ?
Merci.
Bonjour babastioun, Fanfan,
Des progressbar, vous en trouverez une multitude alors difficile de choisir.
Un essai en PJ avec le status bar et un progressbar pour l'exemple.
Statusbar :
barre_progresse.Show 0 'affichage de l'userform
For i = 2 To lastRow
barre_progresse.actualiser CInt(100 * i / lastRow) 'mise à jour de la bar de progression
La seul macro de l'userform
Code:
Sub actualiser(taux As Integer)
Barre.Width = (taux * Barretexte.Width) / 100 'c'est une image qui s'appelle barre, with étant sa taille
Barretexte = taux & "%" 'c'est le label qui est au dessus
If taux = 100 Then Unload Me ' si maxi fermeture de l'userform
DoEvents 'suspend la macro pour traiter la barre de progression
End Sub