Utilisation de la propriété StatusBar de l’objet Application dans Excel VBA

La propriété StatusBar de l’objet Application dans Excel VBA peut être utilisée pour indiquer la progression d’une macro longue. De cette façon, vous pouvez informer l’utilisateur qu’une macro est toujours en cours d’exécution

La macro que nous allons créer remplit la plage (“A1: E20”) avec des nombres aléatoires.

Ajoutez les lignes de code suivantes au bouton de commande:

1. Premièrement, nous déclarons trois variables de type Integer, nommées i, j et transport.

Dim i As Integer, j As Integer, transport As Integer

2. Ajoutez une boucle double.

For i = 1 To 12
    For j = 1 To 4
    Next j
Next i

Ajoutez les lignes de code suivantes (en 3, 4 et 5) à la boucle.

3. Utilisez la fonction RandBetween pour importer un nombre aléatoire compris entre 12 et 80.

Cells(i, j).Value = WorksheetFunction.RandBetween(12, 80)

4. Initialisez la variable transport. La deuxième ligne de code écrit la valeur de la variable transport et du texte descriptif dans la barre d’état.

transport= (i - 1) * 5 + (j * 1)
Application.StatusBar = "Importation de données .." & transport & "% Completed"

5. Nous utilisons la méthode Wait de l’objet Application pour simuler une macro longue.

Application.Wait Now + TimeValue ("00:00:01")

6. Pour restaurer le texte de la barre d’état par défaut, définissez la propriété StatusBar sur False (en dehors de la boucle). 

Application.StatusBar = False

Résultat lorsque vous cliquez sur le bouton de commande sur la feuille:

Remarque: vous pouvez interrompre une macro à tout moment en appuyant sur Echap ou Ctrl + Arrêt. Pour une approche plus visuelle, consultez notre programme Indicateurs de progrès.

S’abonner
Notifier de
0 Commentaires
Inline Feedbacks
Voir tous les commentaires

Initiation à Excel

Fonctions Excel

Excel VBA

Macros VBA Utiles

Plus d'outils

Sur Facebook

Sur YouTube

0
Nous aimerions avoir votre avis, veuillez laisser un commentaire.x