许多用户都渴望有一种方法可以从 Outlook 邮件甚至多封邮件的正文中快速提取所有电子邮件地址。 因此,本文将针对这个问题,为大家分享一个使用VBA的快速方法。
当有人向您发送一封正文包含电子邮件地址列表的电子邮件时,如果您出于某些原因想要使用这些电子邮件地址,例如添加到您的联系人文件夹或其他,您必须首先提取正文中的所有电子邮件地址. 因此,在下文中,我们将向您展示如何使用VBA 来实现它。

从多个 Outlook 电子邮件的正文中提取所有电子邮件地址
- 首先,启动您的 Outlook 应用程序。
- 然后,进入 Outlook 主窗口后,您可以按“Alt + F11”键。
- 接下来,在新的“Microsoft Visual Basic for Applications”窗口中,您需要打开一个未使用的模块或简单地插入一个新模块。
- 稍后,您必须将以下 VBA 代码复制并粘贴到此模块中。
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
- 稍后,您可以退出当前的 VBA 编辑器窗口并继续将新宏添加到快速访问工具栏。
- 之后,您必须将 Outlook 宏安全级别更改为低。
- 最后,你可以试试看。
- 首先,在电子邮件列表中,选择多封 Outlook 电子邮件,您需要从其正文中提取电子邮件地址。
- 然后单击快速访问工具栏中的新按钮。
- 当您收到提示“已完成”的消息时,您可以转到 VBA 代码中的预定义文件夹以查找新的 .TXT 文件。
- 打开这个文件,你会看到所有提取的电子邮件地址,如下截图所示:
保护 Outlook 免受恶意宏的侵害
如果您已将 Outlook 设置为允许所有宏,则必须留意未知电子邮件中伪装的所有宏。 这是因为它们可能包含很多隐藏的病毒,这些病毒会直接导致 Outlook 损坏。 受病毒感染的 PST 文件很难恢复。 到时候,或许你不得已的手段是强而可靠的 展望修复 实用程序,例如 DataNumen Outlook Repair. 无论损坏程度如何,它都可以修复 Outlook 文件。
作者简介:
Shirley Zhang 是一位数据恢复专家 DataNumen, Inc.,它是数据恢复技术领域的世界领先者,包括 损坏的sql 和 outlook 修复软件产品。 欲了解更多信息,请访问 datanumen.com


