Salut le forum
Je suis débutant en VBA et je code en vba sous excel2000 ()
J'essaie de mettre une progressbar dans une usf pendant les temps de traitement mais j'ai un petit souci :
La progressbar s'incremente bien, mais elle ne s'affiche bien qu'en "pas à pas". En "temps réel" on voit la progression de la progressbar mais le texte dans la usf et le reste de la usf est blanc...
Je vous mets mon code :
Et pour mon traitement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24 Option Explicit Sub progressbar_init() progressbar.ProgressBar1.Min = 0 progressbar.ProgressBar1.Max = 100 progressbar.ProgressBar1.Value = 0 progressbar.Show End Sub Sub progressbar_pct(ByRef pct As Long) progressbar.ProgressBar1.Value = pct End Sub Sub progressbar_fin() Unload progressbar End Sub
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 Dim j as long, i as long (...) Call progressbar_init k = 0 For i = 2 To nbLigne j = i / nbLigne * 100 'Calcul un pourcentage de progression If j > k + 1 Then 'Afin de n'appeler la progressbar que lorsque elle aura changé Call progressbar_pct(j) k = j End If If i = nbLigne Then Call progressbar_fin End If (....traitement....)
Des idées ??
Merci d'avance![]()
Partager