Comment créer une barre de progression en VBA
Une barre de progression indique l'avancement d'une opération dans une application. C'est généralement un rectangle animé. Le VBA (Visual Basic for Applications) est le langage de programmation des applications Microsoft Office pour automatiser tâches et créer interfaces. On peut facilement créer une barre de progression en VBA dans Excel (tableur de la suite Office).
Étape 1 : Créer le UserForm et les étiquettes
Ouvrez Excel, appuyez « Alt+F11 » pour l'éditeur VBA. Clic droit « VBAProject » → « Insertion » → « UserForm ». Dans la « Boîte à outils », cliquez « Label ». Maintenez le clic et tracez un label sur le UserForm. Répétez pour créer 10 labels au total.
Étape 2 : Propriétés des labels
Clic droit sur un label → « Propriétés ». Mettez « Height » à 42, « Width » à 12, « Top » à 12. Faites de même pour les 9 autres labels.
Étape 3 : Bouton de commande
Dans la « Boîte à outils », cliquez « CommandButton » et ajoutez un bouton sur le UserForm. Clic droit sur le bouton → « Voir le code » pour créer une procédure.
Étape 4 : Variable compteur
Tapez :
Dim cnt As Integer cnt = 0
Étape 5 : Masquer les labels au démarrage
Tapez :
Me.Label1.Visible = False Me.Label2.Visible = False ... Me.Label10.Visible = False
Étape 6 : Boucle d'animation
Tapez la boucle While qui itère 10 fois avec pause de 5 secondes :
Do While cnt <> 10
Select Case cnt
Case 1: Me.Label1.Visible = True: Me.Label1.BackColor = vbBlue
Case 2: Me.Label2.Visible = True: Me.Label2.BackColor = vbBlue
...
Case 10: Me.Label10.Visible = True: Me.Label10.BackColor = vbBlue
End Select
Me.Repaint
Application.Wait Now + TimeValue("00:00:05")
cnt = cnt + 1
Loop
Étape 7 : Module d'appel
Menu « Insertion » → « Module ». Copiez-collez :
Sub showProgressBar()
UserForm1.Show
End Sub
Appuyez « F5 » pour exécuter.
