ProgressBar et le bouton "OK"

Kobbe Messages postés 1 Date d'inscription mercredi 15 juin 2005 Statut Membre Dernière intervention 16 juin 2005 - 16 juin 2005 à 14:23
cs_babson Messages postés 25 Date d'inscription samedi 7 octobre 2000 Statut Membre Dernière intervention 16 décembre 2008 - 17 juin 2005 à 11:22
Mon premier sujet sur ce forum donc bonjour à tout le monde.

Je commence a débuter sur VB/VBA et je vois que ce site est
l’endroit a y être pour faire avancer mes connaissances en matière.

Actuellement j’ai un petit souci à intégrer une barre de
progression dans une macro. J’ai déjà vu pas mal d’explications et des sujets
sur le forum mais vu mes compétences limitées je voulais être sur de mes
parcours.

Le macro (excel ) en question lance une form qui permet au l’utilisateur
de cocher les casses des feuils a imprimer.Vu que le traitement des feuilles prend environ 1 minute (pas mal de
code derrière pour autres fonctionnalités) je voulais intégrer une barre de
progression pour donner des indications visuelles a l’utilisateur avec le
bouton « OK »

J’ai crée un « User form » (nomée BarreProgress)
et insérée le « ProgressBar » qui vient avec VBA.

Sur le forum j’ai trouvé aussi le code du ProgressBar à utiliser :

pour eviter de coller le code ici voici le lienpour la consulter

Je ne sais pas trop ou le mettre dans le http://www.nomorepasting.com/paste.php?pasteID=42123' target='_blank'>code suivant de
bouton OK :






Vous pouvezme donner
un coup de main ?



merci





pas de signature c'est une bonne signature

3 réponses

cs_babson Messages postés 25 Date d'inscription samedi 7 octobre 2000 Statut Membre Dernière intervention 16 décembre 2008
17 juin 2005 à 11:17
Salut,
voici un exemple avec un control de checkbox dans vb6 (je pense que ça doit être la même chose dans VBA). sur une form tu mets environ 4 checkbox. Dans le form_Load tu initialises le barre de progression. et plus il y a de checkbox coché plus la barre de progression avance et inversement. Quand tout les checkbox sont coché la barre est au maximum.
ex:


Private Sub Form_Load()


ProgressBar1.Min = 0
ProgressBar1.Max = Check1.Count
ProgressBar1.Value = ProgressBar1.Min


End Sub

Private Sub Check1_Click(Index As Integer)
Dim i As Integer
Dim iCounter As Integer


ProgressBar1.Min = 0
ProgressBar1.Max = Check1.Count
For i = 0 To Check1.Count - 1
If Check1(i).Value = 1 Then
iCounter = iCounter + 1
End If
Next
ProgressBar1.Value = iCounter


End Sub



Babson everything is possible....
0
cs_babson Messages postés 25 Date d'inscription samedi 7 octobre 2000 Statut Membre Dernière intervention 16 décembre 2008
17 juin 2005 à 11:20
Salut, c'est même chose que ci-dessus mais par mesure de sécurité je remets le compteur "iCounter " à zéro

Private Sub Form_Load()


ProgressBar1.Min = 0
ProgressBar1.Max = Check1.Count
ProgressBar1.Value = ProgressBar1.Min


End Sub

Private Sub Check1_Click(Index As Integer)
Dim i As Integer
Dim iCounter As Integer


iCounter = 0
ProgressBar1.Min = 0
ProgressBar1.Max = Check1.Count
For i = 0 To Check1.Count - 1
If Check1(i).Value = 1 Then
iCounter = iCounter + 1
End If
Next
ProgressBar1.Value = iCounter


End Sub



Babson everything is possible....
0
cs_babson Messages postés 25 Date d'inscription samedi 7 octobre 2000 Statut Membre Dernière intervention 16 décembre 2008
17 juin 2005 à 11:22
encore plus simple avec moins de ligne à écrire


Private Sub Form_Load()


ProgressBar1.Min = 0
ProgressBar1.Max = Check1.Count
ProgressBar1.Value = ProgressBar1.Min


End Sub

Private Sub Check1_Click(Index As Integer)
Dim i As Integer
Dim iCounter As Integer


iCounter = 0
For i = 0 To Check1.Count - 1
If Check1(i).Value = 1 Then
iCounter = iCounter + 1
End If
Next
ProgressBar1.Value = iCounter


End Sub



Babson everything is possible....
0
Rejoignez-nous