Bonjour,

J'ai actuellement un programme qui me rajoute tous les UserControles présent dans ma Form dans une collection de manière manuelle et je souhaite le faire de manière automatique. Alors j'ai déjà des pistes sur comment le faire mais j'ai des doutes que sa marche.

Code dans ma Form dans load:
Code dans une classe qui représente la procédure PopullateEQT :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
Public Sub PopullateEQT()
    Dim nbShape As Integer
    Dim i As Integer
    Dim S1 As Shape
    nbShape = Form1.Shapes.Count
    For i = 1 To nbShape
        Set S1 = Form1.Shapes.Item(i)
        If (Not S1 Is Nothing) Then
            If S1.Type <> msoFormControl Then
                Call AjouterEQT(S1.Name, S1)
            End If
        End If
    Next i
End Sub
La procédure AjouterEQT enregistre seulement mon UC dans une collection avec comme clé, le nom du UC. Je vais pas mettre ici cette procédure car elle marche déjà en mode manu.

Par contre ma "Form1" ne reconnais pas le Shapes, j'ai voulu avoir vos suggestions pour remplacer la partie "Shapes" par qqc de plus approprié et revoir le code de la procédure PopullateEQT s'il le faut.

PS: Je rappel que la plus par des UC présents dans mon Form sont des Shapes créer par mon tuteur de stage.