Bonjour à tous,
J'ai crée une des frames de manière dynamique comme suite :
Private Sub add1_Click()
Dim objFr As Control
Dim cl As Classe1
nbFrame = frmControlCount(Me, "Frame") + 1
i = nbFrame - 3
Set collect = New Collection
Set objFr = Me.Controls.Add("forms.frame.1")
With objFr
.Name = "Frame" & nbFrame
.Object.Caption = "Formule n°" & i
.left = leftFr
.top = 222 + (i - topFr) * (66 + 6)
.width = 282
.height = 66
End With
Set cl = New Classe1
Set cl.Frame = objFr
collect.Add cl
End Sub
La classe comprend ceci :
Option Explicit
Public WithEvents TxtBx As MSForms.TextBox
Public WithEvents Choice As MSForms.ComboBox
Public WithEvents Frame As MSForms.Frame
avec deux méthodes une pour Choice et l'autre TxtBx
Et ce que j'aimerais pouvoir faire c'est de boucler sur les frames de cette classe comme :
For f = 5 To nbFrame
frameNo = f - 3
For Each Ctrl In Classe1.Controls
If TypeName(Ctrl) = "ComboBox" And Ctrl.Parent.Name = "Frame" & f Then
...
Je réalise bien que ce n'est pas la bonne manière mais je commence à désespérer :-/
Encore merci d'avance à tous