Les macros sont souvent créées pour traiter les données et le traitement des données peut souvent prendre beaucoup de temps. Pour cette raison, certains utilisateurs peuvent penser que leur ordinateur a cessé de répondre, même si la macro est en train de découper une tâche qui lui est assignée.

La solution pour la plupart des développeurs de macros consiste à alerter les utilisateurs de la progression de la macro. Il existe deux façons de procéder dans Excel. L’approche la plus simple et la plus courante consiste à utiliser la barre d’état pour indiquer ce que fait la macro. Tout ce que vous avez à faire est de créer une chaîne contenant le message d’état, puis d’affecter cette chaîne à la propriété StatusBar de l’objet Application, comme indiqué ici:

sStatus = "Processing Input File - Please Be Patient"

Application.StatusBar = sStatus

Le message reste dans la barre d’état jusqu’à ce que vous le remplaciez par un autre message. Vous pouvez également indiquer la progression d’une boucle en indiquant le pourcentage achevé:

For x = 1 to y     Application.StatusBar = Format(x/y,"0.0%") & " Complete"

' Other coding here Next

Lorsque votre routine se termine, ramenez la barre d’état à la normale avec l’instruction suivante:

Application.StatusBar = False

Si vous préférez développer un indicateur de progression réel pour la macro, vous pouvez le faire en créant un UserForm, puis en mettant à jour le formulaire pour afficher une «barre de pourcentage» ou un autre indicateur visuel. La plupart des personnes qui souhaitent ce type d’indicateur de progrès s’appuient sur une variante de la solution de John Walkenbach, trouvée à cette adresse:

http://spreadsheetpage.com/index.php/tip/displaying_a_progress_indicator/

_Note: _

Si vous souhaitez savoir comment utiliser les macros décrites sur cette page (ou sur toute autre page des sites ExcelTips), j’ai préparé une page spéciale qui comprend des informations utiles.

lien: / excelribbon-ExcelTipsMacros [Cliquez ici pour ouvrir cette page spéciale dans un nouvel onglet de navigateur].

ExcelTips est votre source pour une formation Microsoft Excel rentable.

Cette astuce (3223) 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-Progression_Indicator_in_a_Macro [Indicateur de progression dans une macro].