Partager via


Afficher les détails de l’entrée d’adresse pour l’expéditeur d’un message

Le destinataire de chaque message remisable par un fournisseur de transport détient une entrée d’adresse dans la hiérarchie de carnets d’adresses du fournisseur dans le cadre de la session. Cette rubrique décrit comment afficher par programme les informations de l’entrée d’adresse de l’expéditeur d’un élément de courrier affiché dans un inspecteur.

  1. Pour l’élément de courrier actuellement affiché, utilisez l’objet PropertyAccessor pour déterminer l’ID d’entrée de l’expéditeur.

  2. Utilisez la méthode NameSpace.GetAddressEntryFromID de la session active pour renvoyer un objet AddressEntry .

  3. Utilisez la propriété AddressEntry.AddressEntryUserType pour déterminer le type de AddressEntry, puis affichez les détails en conséquence :

    • Si l’entrée d’adresse est un élément de contact dans le dossier Contacts Outlook, ou si l’adresse SMTP de l’expéditeur correspond à l’adresse e-mail d’un élément de contact dans le dossier Contacts par défaut, affichez les informations d’entrée d’adresse dans un inspecteur de contacts. Pour faire correspondre les adresses de messagerie dans le dossier Contacts, utilisez l’objet Table pour effectuer un filtre rapide sur les propriétés ContactItem.Email1Address, ContactItem.Email2Address et ContactItem.Email3Address des éléments de ce dossier.
  • Dans tous les autres cas, affichez les informations d’entrée d’adresse dans la boîte de dialogue Propriétés Email.

Remarques

Pour exécuter cet exemple de code :

  1. Ouvrez un message de manière à l’afficher dans l’inspecteur actif.

  2. Placez le code dans le module intégré ThisOutlookSession.

  3. Exécutez la TestAddressEntryDetails procédure pour afficher les détails de l’entrée d’adresse sur le message électronique dans l’inspecteur actif :

Sub TestAddressEntryDetails() 
 Dim oMail As MailItem 
 
 Set oMail = Application.ActiveInspector.CurrentItem 
 DisplayAddressEntryDetails oMail 
End Sub 
 
 
Sub DisplayAddressEntryDetails(oM As MailItem) 
 Dim oPA As Outlook.PropertyAccessor 
 Dim oContact As Outlook.ContactItem 
 Dim oSender As Outlook.AddressEntry 
 Dim SenderID As String 
 
 'Create an instance of PropertyAccessor 
 Set oPA = oM.PropertyAccessor 
 
 'Obtain PidTagSenderEntryId and convert to string 
 SenderID = oPA.BinaryToString _ 
 (oPA.GetProperty("https://schemas.microsoft.com/mapi/proptag/0x0C190102")) 
 
 'Obtain AddressEntry Object of the sender 
 Set oSender = Application.Session.GetAddressEntryFromID(SenderID) 
 
 'Examine AddressEntryUserType 
 If oSender.AddressEntryUserType = olOutlookContactAddressEntry Then 
 'Obtain ContactItem for AddressEntry 
 Set oContact = oSender.GetContact 
 oContact.Display 
 'Display details for Exchange or SMTP sender 
 Else 
 oSender.Details 
 End If 
End Sub

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.