En règle générale, l’une des premières actions à effectuer lorsque vous créez une macro consiste à utiliser une commande qui désactive la mise à jour de l’affichage à l’écran. Cela est fait car la macro s’exécutera plus rapidement lorsqu’elle n’aura pas besoin de mettre à jour l’écran. Lorsque cela est fait, l’une des choses les plus importantes que vous puissiez faire est de fournir des commentaires à l’utilisateur afin qu’il ne pense pas que son système est sorti pour déjeuner.

Une méthode courante pour fournir des commentaires consiste à utiliser la barre d’état. En utilisant VBA, cela se fait avec une ligne de code similaire à la suivante:

Application.StatusBar = "Updating past months..."

Cette ligne provoque l’affichage du message Mise à jour des derniers mois …​__ dans la barre d’état du programme d’application. Ce message y reste jusqu’à ce qu’un autre message soit écrit dans la barre d’état, soit par votre macro, soit par Excel.

Si vous souhaitez effacer le message de la barre d’état, vous pouvez le faire de deux manières. La première consiste à écrire une chaîne vide dans la barre d’état, comme dans le code suivant:

Application.StatusBar = ""

Dans ce cas, il n’y a rien entre les guillemets, donc une chaîne vide est affichée sur la barre d’état, effaçant tout ce qui s’y trouvait auparavant. L’autre méthode consiste à utiliser la ligne suivante:

Application.StatusBar = False

L’écriture de la valeur logique FALSE dans la propriété Application.StatusBar efface tout ce que vous avez écrit dans la barre d’état avant et restaure le texte de la barre d’état par défaut.

L’utilisation de la barre d’état est très bien, tant que la barre d’état est activée. Excel peut être personnalisé par l’utilisateur afin que la barre d’état soit désactivée. Si cela a été fait, vous ne pouvez pas afficher de messages dans la barre d’état. La solution consiste à vous assurer que la barre d’état est activée avant d’essayer d’afficher un message.

Vous pouvez contrôler l’affichage de la barre d’état à l’aide de la propriété Application.DisplayStatusBar. Si vous définissez cette propriété sur une valeur logique (TRUE ou FALSE), elle active ou désactive la barre d’état.

Comme exemple de programmation de ce type de processus, considérez le code suivant:

bStatusState = Application.DisplayStatusBar Application.DisplayStatusBar = True Application.StatusBar = "Updating past months..."

' ' Rest of program goes in here ' Application.StatusBar = False Application.DisplayStatusBar = bStatusState

La toute première ligne de ce code attribue la valeur actuelle de la barre d’état (TRUE ou FALSE, signifiant activé ou désactivé) à la variable bStatusState.

Cette même variable est utilisée dans la dernière ligne pour réinitialiser la condition de la barre d’état à son état d’origine. Entre les deux, la barre d’état est activée et un message s’affiche, puis effacé.

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (2296) s’applique à Microsoft Excel 97, 2000, 2002 et 2003. Vous pouvez trouver une version de cette astuce pour l’interface ruban d’Excel (Excel 2007 et versions ultérieures) ici:

link: / excelribbon-Using_the_Status_Bar [Utilisation de la barre d’état].