Utiliser le contenu d'une cellule comme variable objet

Salut,

J'ai créé un treeview pour lancer les UserForm correspondant aux items. Le nom du UserForm est dans une cellule.

J'ai écrit :

Private Sub TreeView1_NodeClick(ByVal Node As MSComctlLib.Node)

Set USF = Sheets("Menu").Cells(Node.Index, 16)

USF.Show 1

End Sub

USF est déclarée comme variable publique objet.

Sheets("Menu").Cells(Node.Index, 16).Value est une chaine de caractère (elle est entre guillemets), comment faire pour la transformer en objet pour l'affecter à la variable USF et ouvrir ensuite le UserForm correspondant ?

Merci d'avance.

Manu

Bonsoir,

Je tenterai bien cette fonction "ShowUserFormByName"

Source :

https://www.ozgrid.com/forum/index.php?thread/54815-vba-reference-dynamic-userform-name/

Public Sub ShowUserFormByName(FormName As String)
Dim oUserForm As Object
 On Error GoTo err
 Set oUserForm = UserForms.Add(FormName)
 oUserForm.Show
 Exit Sub
err:
 Select Case err.Number
 Case 424:
 MsgBox "The Userform with the name " & FormName & " was not found.", vbExclamation, "Load userforn by name"
 Case Else:
 MsgBox err.Number & ": " & err.Description, vbCritical, "Load userforn by name"
 End Select
End Sub
Rechercher des sujets similaires à "utiliser contenu comme variable objet"