Comment instancier un Userform

Agi67 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention   -  
 Patrice67 -
Bonjour,

En VBA sous Excel, je souhaite parcourir les composants d'un Project VBA. J'arrive à faire cette étape avec :
Dim userf as Userform

For Each userf In ThisWorkbook.VBProject.VBComponents

set userf = Userforms(userf.name) ' Cette étape ne fonctionne pas.

Next

Je souhaiterais instancier les Userform trouvés dans cette boucle afin d'obtenir leurs propriétés(Top, Left, Height, Width) comme je le fais dans le cas des Contrôles dans les Userforms
Merci d'avance pour votre aide.

3 réponses

cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
0
Agi67 Messages postés 11 Date d'inscription   Statut Membre Dernière intervention  
 
Bonjour cs_Le Pivert ,

Merci pour ces liens que j'avais préalablement consultés. Sans une réelle réponse à ma question.

Cdt
Patrice
0
cs_Le Pivert Messages postés 7904 Date d'inscription   Statut Contributeur Dernière intervention   729
 
Sans une réelle réponse à ma question.

c'est étonnant car moi je trouve réponse à ta question dans le second lien

a mettre dans un module:

Option Explicit
Sub listeUserFormClasseur()
    'nécéssite d'activer la référence
    'Microsoft Visual Basic For Applications Extensibility 5.3
    Dim VBCmp As VBComponent
    For Each VBCmp In ThisWorkbook.VBProject.VBComponents
        If VBCmp.Type = 3 Then
        MsgBox "nom de l'UserForm: " & VBCmp.Name
        MsgBox "largeur de " & VBCmp.Name & " " & VBCmp.Properties("Width")
        MsgBox "hauteur de " & VBCmp.Name & " " & VBCmp.Properties("Height")
        MsgBox "top de " & VBCmp.Name & " " & VBCmp.Properties("Top")
        MsgBox "left de " & VBCmp.Name & " " & VBCmp.Properties("Left")
        End If
    Next VBCmp
End Sub


Voilà,

@+
0
Patrice67
 
Bonjour cs_Le Pivert.

Ma réponse tardive. Merci j'ai pu ainsi avancer.
Cordialement
Patrice
0