KutoolsforOffice — Une solution unique, cinq outils puissants.Faire plus avec moins d'efforts.Soldes de mars : 20 % de réduction

Comment récupérer l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs messages dans Outlook ?

AuteurSiluvia Date de modification

Avez-vous déjà tenté d’extraire l’adresse e-mail du champ « De » d’un ou plusieurs messages reçus dans Outlook ? Cet article vous propose un code VBA pour réaliser cette opération en toute simplicité.


Obtenir l’Adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

Veuillez exécuter le code VBA ci-dessous pour extraire l’adresse e-mail figurant dans le champ « De » d’un ou plusieurs messages reçus dans Outlook.

1. Ouvrez un dossier de messagerie et sélectionnez un message électronique dont vous souhaitez obtenir l’adresse e-mail de l’expéditeur. Appuyez sur les touches Alt+F11 pour ouvrir la fenêtre Microsoft Visual Basic pour Applications.

Conseils : Pour sélectionner plusieurs e-mails, maintenez la touche Ctrl enfoncée, puis sélectionnez les e-mails un par un.

2. Dans la fenêtre Microsoft Visual Basic pour Applications, cliquez sur Insertion > Module, puis copiez le code VBA suivant dans la fenêtre du module (code).

étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

Code VBA : extraire l’Adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

Sub GetSmtpAddressOfSelectionEmail()
  Dim xExplorer As Explorer
  Dim xSelection As Selection
  Dim xItem As Object
  Dim xMail As MailItem
  Dim xAddress As String
  Dim xFldObj As Object
  Dim FilePath As String
  Dim xFSO As Scripting.FileSystemObject
  On Error Resume Next
  Set xExplorer = Application.ActiveExplorer
  Set xSelection = xExplorer.Selection
  For Each xItem In xSelection
    If xItem.Class = olMail Then
      Set xMail = xItem
      xAddress = xAddress & VBA.vbCrLf & "  " & GetSmtpAddress(xMail)
    End If
  Next
  If MsgBox("Sender SMTP Address is: " & xAddress & vbCrLf & vbCrLf & "Do you want to export the address list to a txt file? ", vbYesNo, "Kutools for Outlook") = vbYes Then
    Set xFldObj = CreateObject("Shell.Application").BrowseforFolder(0, "Select a Folder", 0, 16)
    Set xFSO = New Scripting.FileSystemObject
    If xFldObj Is Nothing Then Exit Sub
    FilePath = xFldObj.Items.Item.Path & "\Address.txt"
    Close #1
    Open FilePath For Output As #1
    Print #1, "Sender SMTP Address is: " & xAddress
    Close #1
    Set xFSO = Nothing
    Set xFldObj = Nothing
    MsgBox "Address list has been exported to:" & FilePath, vbOKOnly + vbInformation, "Kutools for Outlook"
  End If
End Sub
Function GetSmtpAddress(Mail As MailItem)
  Dim xNameSpace As Outlook.NameSpace
  Dim xEntryID As String
  Dim xAddressEntry As AddressEntry
  Dim PR_SENT_REPRESENTING_ENTRYID As String
  Dim PR_SMTP_ADDRESS As String
  Dim xExchangeUser As exchangeUser
  On Error Resume Next
  GetSmtpAddress = ""
  Set xNameSpace = Application.Session
  If Mail.sender.Type <> "EX" Then
    GetSmtpAddress = Mail.sender.Address
  Else
    PR_SENT_REPRESENTING_ENTRYID = "http://schemas.microsoft.com/mapi/proptag/0x00410102"
    xEntryID = Mail.PropertyAccessor.BinaryToString(Mail.PropertyAccessor.GetProperty(PR_SENT_REPRESENTING_ENTRYID))
    Set xAddressEntry = xNameSpace.GetAddressEntryFromID(xEntryID)
    If xAddressEntry Is Nothing Then Exit Function
    If xAddressEntry.AddressEntryUserType = olExchangeUserAddressEntry Or xAddressEntry.AddressEntryUserType = olExchangeRemoteUserAddressEntry Then
      Set xExchangeUser = xAddressEntry.GetExchangeUser()
      If xExchangeUser Is Nothing Then Exit Function
      GetSmtpAddress = xExchangeUser.PrimarySmtpAddress
    Else
      PR_SMTP_ADDRESS = "http://schemas.microsoft.com/mapi/proptag/0x39FE001E"
      GetSmtpAddress = xAddressEntry.PropertyAccessor.GetProperty(PR_SMTP_ADDRESS)
    End If
  End If
End Function

3. Cliquez sur Outils > Références, puis cochez la case Microsoft Scripting Runtime dans la boîte de dialogue Références – Projet1.

étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

4. Appuyez sur la touche F5 pour exécuter le code. Une boîte de dialogue Kutools pour Outlook s’ouvre alors, affichant toutes les adresses e-mail des expéditeurs des e-mails sélectionnés.

Conseils:

Si vous souhaitez exporter les Liste d'adresses vers un Fichier TXT, cliquez sur le bouton Oui.
Sinon, cliquez sur le bouton Nonpour arrêter le processus.
étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

5. Après avoir cliqué sur le bouton Oui, une boîte de dialogue Parcourir les dossiers apparaît. Sélectionnez un dossier pour enregistrer le fichier, puis cliquez sur le bouton OK.

étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

6. Enfin, une boîte de dialogue Kutools pour Outlook s’ouvre, indiquant l’emplacement du fichier exporté. Cliquez sur OK pour la fermer.

étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

7. Accédez au dossier où le fichier exporté a été enregistré et ouvrez le fichier texte nommé Address pour consulter les adresses e-mail des expéditeurs des e-mails sélectionnés.

étapes pour obtenir l’adresse e-mail de l’expéditeur à partir d’un ou plusieurs e-mails dans Outlook

Meilleurs outils de productivité Office

Découvrez la toute nouvelle Kutools pour Outlook avec 100+ fonctionnalités incroyables !Cliquez pour télécharger dès maintenant !

🤖Kutools IA:Utilise une technologie d’intelligence artificielle avancée pour gérer vos e-mails sans effort, notamment en répondant, résumant, optimisant, développant, traduisant et rédigeant des messages.

📧Automatisation des e-mails : Réponse automatique (disponible pour POP et IMAP) / Planification de l’envoi d’e-mails / CC/BCC automatique selon des règles lors de l’envoi d’e-mails / Transfert automatique (règle avancée) / Ajout automatique de formules de politesse / Division automatique des e-mails à plusieurs destinataires en messages individuels...

📨Gestion des e-mails : Rappeler un e-mail / Bloquer les e-mails frauduleux par objet et autres critères / Supprimer les e-mails en double / Recherche avancée / Organiser vos dossiers

📁Pièces jointes Pro : Enregistrer en lot / Détacher en lot / Compresser en lot / Enregistrement automatique / Détachement automatique / Compression automatique

🌟Magie de l’interface : 😊 Encore plus d’emojis jolis et stylés / Vous prévient à l’arrivée d’e-mails importants / Réduire Outlook au lieu de le fermer...

👍Merveilles en un clic : Répondre à tous avec pièces jointes / E-mails anti-hameçonnage / 🕘 Afficher le fuseau horaire – Heure actuelle de l’expéditeur

👩🏼‍🤝‍👩🏻Contacts et calendrier : Créer en lot : ajouter un contact à partir des e-mails sélectionnés / Diviser un groupe de contacts en groupes individuels / Supprimer le rappel d’anniversaire

Utilisez Kutools dans votre langue préférée – compatible avec l’anglais, l’espagnol, l’allemand, le français, le chinois et plus de 40 autres langues !

Débloquez Kutools pour Outlook instantanément en un seul clic ! Ne perdez plus une seconde : téléchargez dès maintenant et boostez votre efficacité !

kutools for outlook features1kutools for outlook features2

🚀 Téléchargement en un clic — Obtenez tous les compléments Office

Fortement recommandé : Kutools for Office (5-en-1)

Un seul clic pour télécharger cinq programmes d’installationen une fois —Kutools pour Excel, Outlook, Word, PowerPointet Office Tab Pro.Cliquez pour télécharger dès maintenant !

  • Commodité en un clic : téléchargez les cinq packs d’installation en une seule action.
  • 🚀Prêt à relever toutes vos tâches Office : installez les compléments dont vous avez besoin, exactement quand vous en avez besoin.
  • 🧰Inclus: Kutools pour Excel / Kutools pour Outlook / Kutools pour Word / Office Tab Pro / Kutools for PowerPoint