Bonjour le Forum,

(Désolé pour mon absence. Surbooké.)

J'ai un usf contenant plus de 110 contrôles.

Comme je souhaiterais utiliser leurs noms dans un module de classe, j'envisage de créer ceux-ci par macro.

J'ai essayé la procédure suivante dans l'évènement Initialize et dans une procédure particulière.

Dans les 2 cas, celle-ci bloque sur la définition du nom.
Erreur 382. Impossible de définir la propriété à l'exécution.
Voici le code

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
25
26
Public Sub essai_nom()
k = 0
Load mon_usf
For Each Ctl In mon_usf.Controls
 
        With Ctl
        'And (.BackColor = &HC0E0FF Or .BackColor = &HC0C0FF)
 
                If .Left = 5 And .Width = 100 And (TypeOf Ctl Is MSForms.ComboBox) Then
                        k = k + 1
                        Debug.Print .Name
                        Debug.Print .Left
                        Debug.Print .Top
                        Debug.Print k
                        If .Top = 35 + k * 25 Then
                        Debug.Print "OK"
                                If k > 1 Then _
                                        .Name = "Cbx_Titre_" & k
                        End If
                End If
 
        End With
 
Next Ctl
 
End Sub
Je pense qu'il y a blocage sur le fait de charger le formulaire en quelque façon.
Mais je ne vois pas comment résoudre ce bug.

Merci par vance.