Since you can only access loaded forms, you'll have to load the selected form first. Make sure you have a listbox (ListBox1) with the userform names and a button (CommandButton1), then try the following code:
Private Sub CommandButton1_Click()
Dim i%
UserForms.Add ListBox1.Text
For i = 0 To UserForms.Count - 1
If UserForms(i).Name = ListBox1.Text Then
UserForms(i).Show
Exit For
End If
Next i
End Sub
This code first loads the form by adding it to the Userforms collection.
Since you can only access the form by it's index in that collection, we have to go through the whole collection and compare the name to show the right one.
Daniel