Barre de progression liée au déroulement du code
Bonjour le forum
Voici ma question.
J'ai une macro dont je voudrais visualiser le déroulement avec une barre de progression.
La macro comprend une boucle et de nombreuses mises en forme.
Est-il possible de lier la barre de progression à chaque ligne de code (et non au résultat) qui s'exécute. En gros de la même
manière que ce qui est fait avec la touche F8 quand on exécute la macro en manuel.
Il y a de nombreux exemples de barregraphe sur le net mais j'avoue que l'intégration dans un code m’apparaît
plutôt obscur.
Merci par avance pour toute aide
Bonjour Jp65,
Aucun problème, il faut simplement que tu comptes toutes les étapes (toutes tes lignes de code sauf les lignes vides, les déclarations et les commentaires), ensuite que tu actualises la barre de progression à chaque ligne. Dis-toi bien que la barre de progression est comme la barre d'état, elle n'affiche que les informations que le programme lui transmet. Il faut donc lui dire précisément et régulièrement où on en est dans l'exécution du code.
Cela donnerait quelque chose comme Cela :
Application.StatusBar="Ouverture du classeur...'
Worbooks.Open "D:\MonRépertoire\Test.xls"
Application.StatusBar="Affichage de la feuille Calendrier..."
WorkSheets("Calendrier").activate
Application.StatusBar="Sélection de la date du jour..."
[A1]=Date
.../...
Application.StatusBar=FalseTu remplaces StatusBar par l'actualisation de la barre de progression.
Personnellement, je trouve qu'il n'y a aucun intérêt à faire cela, il est préférable de s'attarder sur les lignes de codes qui prennent du temps, car certaines actions mettent tellement peut de temps que l'avancement de la barre de progression avancera de façon saccadée, donc perte d'intérêt.
Bonjour Benead
Merci pour ta réponse.
Effectivement l'essentiel du temps d'occupation de ma macro est pris par la boucle initiale qui récupère des infos
dans plusieurs fichiers texte et qui les intègre dans x lignes de mon classeur excel.
La mise en forme finale prends du temps mais nettement moins.
Même si le suivi des lignes de codes pour générer un barre graphe est un peu farfelue, pour
moi c'est une manière de mettre les mains dans le cambouis car comme indiqué dans mon premier post
les solutions sur internet sont très nombreuses mais pas vraiment "universelles" et donc très très difficilement
transposables par un débutant comme moi.
Je vais tenter d'appliquer tes conseils.
Encore une fois merci pour l'aide que tu m'apportes.