VBA代码 - 提取电子邮件地址Outlook

时间:2013-06-20 16:32:09

标签: vba outlook outlook-vba

我有一个代码VBA代码,用于从PST文件中提取电子邮件地址。 它非常有用,因为我可以选择提取地址的文件夹。 代码从“”字段中提取。

我需要从邮件正文以及“发件人”字段中提取。

我必须在代码中更改哪些内容?

Sub ExtractEmail()
Dim OlApp As Outlook.Application
Dim Mailobject As Object
Dim Email As String
Dim NS As NameSpace
Dim Folder As MAPIFolder
Set OlApp = CreateObject("Outlook.Application")
' Setup Namespace
Set NS = ThisOutlookSession.Session
' Display select folder dialog
Set Folder = NS.PickFolder
' Create Text File
Set fs = CreateObject("Scripting.FileSystemObject")
Set a = fs.CreateTextFile("c:\email addresses.txt", True)
' loop to read email address from mail items.
For Each Mailobject In Folder.Items
   Email = Mailobject.To
   a.WriteLine (Email)
Next
Set OlApp = Nothing
Set Mailobject = Nothing
a.Close
End Sub

谢谢。

1 个答案:

答案 0 :(得分:0)

你有mailItem对象,所以用它来获取字段。 Mailobject.Sender,Mailobject.SenderEmailAddress,Mailobject.SenderName和Mailobject.Body,Mailobject.HTMLBody或Mailobject.RTFBody - Sorceri

您正在提取To属性的值,这是&#34 ;;"分隔的收件人名称列表。您需要遍历MailItem.Recipients.Collection中的所有项目,并为每个收件人读取Recipient.Address属性。 - Dmitry Streblechenko

Question with no answers, but issue solved in the comments