Propiedad Explorer.Selection (Outlook)
Devuelve un objeto Selection que contiene el elemento o elementos que están seleccionados en la ventana del explorador. Solo lectura.
Sintaxis
expresión. Selección
Expresión Variable que representa un objeto "Explorer".
Comentarios
La ubicación de una selección en el explorador puede estar en la lista de vista, la lista de citas o la lista de tareas en la barra Tareas pendientes o la lista de tareas diarias en la vista de calendario. Para obtener más información, vea la propiedad Location.
La propiedad Selection no incluye los objetos de encabezado de conversación. Llame al método Selection.GetSelection, proporcionando olConversationHeaders como argumento, para obtener objetos de encabezado que están seleccionados en el Explorador de conversación.
Si la carpeta actual muestra una página principal de carpeta, esta propiedad devuelve una colección vacía. Además, si se selecciona un encabezado de grupo, como hoy o un encabezado de grupo de conversación, la propiedad Count en el objeto Selection devuelto es cero.
Ejemplo:
El siguiente ejemplo de Microsoft Visual Basic para aplicaciones (VBA) se muestra el remitente de cada elemento seleccionado en el explorador activo. Utiliza la propiedad Count y el método Item del objeto Selection devuelto por la propiedad Explorer.Selection para mostrar los remitentes de todos los mensajes que están seleccionados en el explorador activo.
Sub GetSelectedItems()
Dim myOlExp As Outlook.Explorer
Dim myOlSel As Outlook.Selection
Dim mySender As Outlook.AddressEntry
Dim oMail As Outlook.MailItem
Dim oAppt As Outlook.AppointmentItem
Dim oPA As Outlook.PropertyAccessor
Dim strSenderID As String
Const PR_SENT_REPRESENTING_ENTRYID As String = _
"http://schemas.microsoft.com/mapi/proptag/0x00410102"
Dim MsgTxt As String
Dim x As Long
MsgTxt = "Senders of selected items:"
Set myOlExp = Application.ActiveExplorer
Set myOlSel = myOlExp.Selection
For x = 1 To myOlSel.Count
If myOlSel.Item(x).Class = OlObjectClass.olMail Then
' For mail item, use the SenderName property.
Set oMail = myOlSel.Item(x)
MsgTxt = MsgTxt & oMail.SenderName & ";"
ElseIf myOlSel.Item(x).Class = OlObjectClass.olAppointment Then
' For appointment item, use the Organizer property.
Set oAppt = myOlSel.Item(x)
MsgTxt = MsgTxt & oAppt.Organizer & ";"
Else
' For other items, use the property accessor to get the sender ID,
' then get the address entry to display the sender name.
Set oPA = myOlSel.Item(x).PropertyAccessor
strSenderID = oPA.GetProperty(PR_SENT_REPRESENTING_ENTRYID)
Set mySender = Application.Session.GetAddressEntryFromID(strSenderID)
MsgTxt = MsgTxt & mySender.Name & ";"
End If
Next x
Debug.Print MsgTxt
End Sub
Consulte también
Soporte técnico y comentarios
¿Tiene preguntas o comentarios sobre VBA para Office o esta documentación? Vea Soporte técnico y comentarios sobre VBA para Office para obtener ayuda sobre las formas en las que puede recibir soporte técnico y enviar comentarios.