Bonjour a tous,

J'ai crée un fichier excel permettant via un formulaire de saisir des données dans une base.
Je souhaite utiliser le même formulaire pour saisir des données à différentes étapes de l'affaire donc les controles à afficher ne sont pas toujours les mêmes.
Pour cela depuis un bouton situé sur ma feuille j'utilise la macro suivante :
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
Public Sub AfficheForm_bp()
Dim VBCmp As VBComponent
Dim ctrl As Control
 
'Boucle sur les composants du classeur
For Each VBCmp In ThisWorkbook.VBProject.VBComponents
    'S'il s'agit d'un UserForm
    If VBCmp.Type = 3 Then
       If VBCmp.Name = "Form_bp" Then
        'Boucle sur les contrôles des userforms
            For Each ctrl In VBCmp.Designer.Controls
        'S'il s'agit d'un label
            ctrl.Visible = True
            Next ctrl
        End If
 
    End If
 
Next VBCmp
 
End Sub
A la première fois tout va bien je gère le formuaire correctement par contre à la sseconde ouvereture j'ai le message d'erreur suivant : Erreur 91 variable objet non définie sur la ligne : For Each ctrl in VBCmp.Designer.Controls.

Merci de votre aide.