De nombreux utilisateurs recherchent une méthode pour extraire rapidement toutes les adresses e-mail du corps d'un e-mail Outlook, voire de plusieurs e-mails. Par conséquent, cet article examinera ce problème et vous partagera une méthode rapide utilisant VBA.
Lorsque quelqu'un vous envoie un e-mail dont le corps contient une liste d'adresses e-mail, si vous souhaitez utiliser ces adresses e-mail pour certaines raisons, comme l'ajout à votre dossier Contacts ou autres, vous devez d'abord extraire toutes les adresses e-mail dans le corps . Par conséquent, dans ce qui suit, nous vous montrerons comment y parvenir avec VBA.

Extraire toutes les adresses e-mail du corps de plusieurs e-mails Outlook
- Au tout début, lancez votre application Outlook.
- Ensuite, après être entré dans la fenêtre principale d'Outlook, vous pouvez appuyer sur les touches "Alt + F11".
- Ensuite, dans la nouvelle fenêtre "Microsoft Visual Basic pour Applications", vous devez ouvrir un module inutilisé ou simplement en insérer un nouveau.
- Plus tard, vous devrez copier et coller le code VBA suivant dans ce module.
Sub ExtractEmailAddresses_BodyofMultipleEmails()
Dim objSelection As Outlook.Selection
Dim objMail As Outlook.MailItem
Dim i, n As Long
Dim objWordApp As Word.Application
Dim objWordDocument As Word.Document
Dim strEmailAddresses As String
Dim objFileSystem As Object
Dim strTextFile As String
Dim objTextFile As Object
Set objSelection = Outlook.Application.ActiveExplorer.Selection
If Not (objSelection Is Nothing) Then
i = 0
n = 1
On Error Resume Next
For i = objSelection.count To 1 Step -1
Set objMail = objSelection.Item(i)
objMail.Display
Set objWordDocument = objMail.GetInspector.WordEditor
Set objWordApp = objWordDocument.Application
Set objSearchRange = objWordDocument.Range
'Find the email addresses via wildcards
With objWordApp.Selection.Find
.Text = "[A-z,0-9]{1,}\@[A-z,0-9,.]{1,}"
.MatchWildcards = True
.Execute
End With
While objWordApp.Selection.Find.Found
'Get a list of email addresses in the body
strEmailAddresses = strEmailAddresses & n & ": " & objWordApp.Selection.Text & vbCrLf
objWordApp.Selection.Find.Execute
n = n + 1
Wend
objMail.Close olDiscard
Next
End If
'Create a new Text file
Set objFileSystem = CreateObject("Scripting.FileSystemObject")
strTextFile = "E:\Extracted Email Addresses-" & Format(Date, "YYYYMMDD") & ".txt"
Set objTextFile = objFileSystem.CreateTextFile(strTextFile, True)
'Input the list of extracted email addresses into this Text file
objTextFile.WriteLine (strEmailAddresses)
objTextFile.Close
MsgBox "Completed!", vbInformation, "Extract Email Addresses"
End Sub
- Plus tard, vous pouvez quitter la fenêtre actuelle de l'éditeur VBA et continuer à ajouter la nouvelle macro à la barre d'outils d'accès rapide.
- Après cela, vous devez définir le niveau de sécurité de votre macro Outlook sur faible.
- Enfin, vous pouvez essayer.
- Tout d'abord, dans la liste des e-mails, sélectionnez plusieurs e-mails Outlook, dont vous devez extraire les adresses e-mail.
- Cliquez ensuite sur le nouveau bouton dans la barre d'outils d'accès rapide.
- Lorsque vous recevez un message vous invitant à "Terminé", vous pouvez accéder au dossier prédéfini dans le code VBA pour trouver un nouveau fichier .TXT.
- Ouvrez ce fichier et vous verrez toutes les adresses e-mail extraites, illustrées par la capture d'écran suivante :
Protégez Outlook contre les macros malveillantes
Si vous avez configuré votre Outlook pour autoriser toutes les macros, vous devez garder un œil sur toutes les macros déguisées dans les e-mails inconnus. C'est parce qu'ils peuvent contenir de nombreux virus cachés, qui peuvent directement causer la corruption d'Outlook. Le fichier PST infecté par un virus est assez difficile à récupérer. À ce moment-là, peut-être que votre dernier recours est un puissant et fiable Correctif Outlook utilitaire, comme DataNumen Outlook Repair. Il peut réparer le fichier Outlook, quelle que soit l'ampleur des dommages.
Introduction de l'auteur:
Shirley Zhang est une experte en récupération de données dans DataNumen, Inc., qui est le leader mondial des technologies de récupération de données, y compris sql corrompu et produits logiciels de réparation Outlook. Pour plus d'informations, visitez www.datanumen.com


