解析.PST文件中的地址

时间:2016-02-01 20:26:29

标签: vba excel-vba outlook outlook-vba excel

我正在开发一个项目,在该项目中,我从Outlook中的一大组.PST文件中提取电子邮件数据,并在excel中记录每个mailitem个,使用VBA按几个mailitem属性进行排序。

我现在遇到的问题是获取真实的电子邮件地址而不是名字。如果我遍历每个mailitem上的收件人并获取他们的recipient.address属性,我会在大多数时间获得他们的交换地址,而不是他们的实际电子邮件地址。

我需要标准的电子邮件格式(*XXXXX*@*XXXX*.com),但我正在处理无法访问原始交换网络的外部pst文件。

这是否意味着无法检索电子邮件地址?

1 个答案:

答案 0 :(得分:1)

在大多数情况下,SMTP地址(PR_SMTP_ADDRESS MAPI属性)将在收件人表中可用,您可以使用Recipient.PropertyAccessor.GetProperty("http://schemas.microsoft.com/mapi/proptag/0x39FE001F")访问它。准备好在属性不存在时处理异常。

使用OutlookSpy查看其中一条消息(单击IMessage按钮,转到GetRecipientTable选项卡)。