Selection.Item, méthode (Outlook)
Renvoie un élément Microsoft Outlook ou un en-tête de conversation depuis la sélection.
Syntaxe
expression. Élément (Index)
expression Variable qui représente un objet « Selection ».
Paramètres
Nom | Requis/Facultatif | Type de données | Description |
---|---|---|---|
Index | Obligatoire | Variant | Numéro d'index de l'objet ou valeur utilisée pour établir une correspondance avec la propriété par défaut d'un objet de la collection. |
Valeur renvoyée
Object qui représente l’élément spécifié ou l’en-tête de conversation.
Remarques
Ne faites pas d’hypothèses sur le type de retour de la méthode Item ; votre code doit être en mesure de gérer plusieurs types d’éléments ou un objet ConversationHeader . Par exemple, la méthode Item peut renvoyer un objet AppointmentItem, MailItem, MeetingItem ou TaskItem dans le dossier Boîte de réception, selon la valeur de la propriété Selection.Location.
La collection Selection contient des objets ConversationHeader uniquement si vous spécifiez olConversationHeaders dans la méthode GetSelection de l’objet Selection .
Exemple
L'exemple Microsoft Visual Basic pour Applications (VBA) affiche l'expéditeur de chaque élément sélectionné dans l'explorateur actif. Il utilise la propriété Count et la méthode Item de l’objet Selection , renvoyées par la propriété Explorer.Selection , pour afficher les expéditeurs de tous les messages sélectionnés dans l’explorateur actif.
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 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
Voir aussi
Assistance et commentaires
Avez-vous des questions ou des commentaires sur Office VBA ou sur cette documentation ? Consultez la rubrique concernant l’assistance pour Office VBA et l’envoi de commentaires afin d’obtenir des instructions pour recevoir une assistance et envoyer vos commentaires.