• Initiateur de la discussion Initiateur de la discussion plumpony531
  • Date de début Date de début

Boostez vos compétences Excel avec notre communauté !

Rejoignez Excel Downloads, le rendez-vous des passionnés où l'entraide fait la force. Apprenez, échangez, progressez – et tout ça gratuitement ! 👉 Inscrivez-vous maintenant !

plumpony531

XLDnaute Nouveau
Bonjour au petit peuple de XLD.....


Je viens de finir une petite application, avec l'aide d'un membre eminent (hellboy) mais maintenant je voudrais rajouter une barre de progression à cette jolie App.

Il y a des dizainne d'exemples sur differents fil mais je ne comprends pas très bien.

Mon code contient deja un for Each ........... next (+ d'autres for each ..... next qui prennent si peu de temps que c'est pas la peine de les englober dans le bidule)

Dans ce fameux For ...... Each, je compte des users contenu dans des groupes que j'inventorie

Ou viens se caler ma progress bar ?
Comment s'incremente t'elle sachant que je ne connais pas le nombre de groupes manipulés et encore moins le nombre de users contenu dans ces groupes ?

Je suppose ( vous me direz que c'est facile de supposer lorsque c'est ecrit partout ......) qu'il me faut un Min et un Max..... ou y peuvent etres ces deux Zigotos sachant que par defaut je n'en est pas


Ci joint un extrait du code dans lequel je voudrais mettre la progress bar


Code:
' ENUMERATE GROUPS AND MEMBERS.
objADAM.Filter = Array('group')
Nom = Mid(objGroup.Name, 4, 20)
'LISTE DES GROUPES AD GGM2003
For Each objGroup In objADAM
    'DETECTION GGM 2003
    If Mid(objGroup.Name, 4, 11) = 'GGM_SMS2003' Then
    User = 0
    'DETECTION MEMBRES
        For Each objMember In objGroup.Members
        User = User + 1
        Next
   
        'REMPLISSAGE DU TAB EXCEL
        'test premier lancement
        If IsEmpty(Feuil1.Cells(x, 1).Value) = True Then
        Feuil1.Cells(x, 1).Value = Mid(objGroup.Name, 4, 40)
        Feuil1.Cells(x, 2).Value = User
        Feuil1.Cells(x, 3).Value = 0
        Feuil1.Cells(x, 4).Value = 0
        Else
        Feuil2.Cells(xtemp, ytemp).Value = Mid(objGroup.Name, 4, 40)
        Feuil2.Cells(xtemp, ytemp + 1).Value = User
        flag = 2
        End If
        
        'Positionnement des y en fonction du remplissage
        While IsEmpty(Feuil1.Cells(x, y)) = False
        y = y + 3
        Wend

        x = x + 1
        xtemp = xtemp + 1
    End If
Next


MERCI
 
hello all,

J'ai regardé ton code.

L'ideal serait de rajouter une fonction dans celui ci pour définir à un moment ou un autre le nombre de groupe par exemple

apres c'est simple

le min et max tu les mets dans les propriétés de ta progresse bar : O et 100

et ensuite tu fais quelque chose de ce style :

' ENUMERATE GROUPS AND MEMBERS.
objADAM.Filter = Array('group')
Nom = Mid(Objgroup.Name, 4, 20)
'LISTE DES GROUPES AD GGM2003
Dim I As Integer
Dim Pas As Integer, Boucle As Integer
i = Nbre Objgroup ' Je ne sais pas trop si tu fais ref à une feuille ou autre
' A adapter
'defini le PAS
Pas = 100 / I
' Admettons que tu as 10 objgroup alor le pas est de 10 (10*10=100)
Boucle = Pas

For Each Objgroup In objADAM

'ton code Bla Bla Bla bla ...

' à la fin avant le next
progressbar1.Value = Boucle
Boucle = Boucle + Pas
Next
End Sub

Voila

met un exemple pour plus de precision

++

Creepy
 
- Navigue sans publicité
- Accède à Cléa, notre assistante IA experte Excel... et pas que...
- Profite de fonctionnalités exclusives
Ton soutien permet à Excel Downloads de rester 100% gratuit et de continuer à rassembler les passionnés d'Excel.
Je deviens Supporter XLD

Discussions similaires

  • Question Question
XL 2021 VBA excel
Réponses
4
Affichages
68
Réponses
3
Affichages
586
  • Question Question
Microsoft 365 worksheet_change
Réponses
29
Affichages
234
Réponses
3
Affichages
230
Réponses
1
Affichages
465
Réponses
3
Affichages
451
Retour