Intenta algo como esto. Asegúrese de tener un elemento abierto cuando lo inicie.
http://www.vbaexpress.com/kb/getarticle.php?kb_id=369
http://www.vbaexpress.com/kb/getarticle.php?kb_id=303
'** The following code goes in a userform **
' Adapted for a single choice
Private Sub cmdOkay_Click()
Dim i As Long
Dim msg As String
Dim Check As String
Dim currItem As MailItem
'Generate a list of the selected items
With ListBox1
For i = 0 To .ListCount - 1
If .Selected(i) Then
msg = .List(i)
Exit For
End If
Next i
End With
If msg = vbNullString Then
'If nothing was selected, tell user and let them try again
MsgBox "Nothing was selected! Please make a selection!"
Exit Sub
Else
Set currItem = Application.ActiveInspector.currentItem
currItem.Subject = msg
Unload Me
End If
End Sub
Private Sub cmdCancel_Click()
Unload Me
End Sub
Private Sub UserForm_Initialize()
With Me.ListBox1
'Clear the rowsource in case it has been set
.RowSource = ""
'Add the items
.AddItem ("Cat")
.AddItem ("Dog")
.AddItem ("Gerbil")
.AddItem ("Lizard")
.AddItem ("Rat")
.AddItem ("Snake")
.AddItem ("Turtle")
End With
End Sub
'** The following code goes in a standard module **
Sub Launch()
'This code will launch the userform
UserForm1.Show
End Sub