阅读outlook 2007中设置的所有电子邮件地址列表

时间:2014-01-12 08:05:46

标签: excel vba outlook

我有一个小的excel宏用于向客户发送邮件。由于这些邮件程序是通过报告ID而不是我自己的ID发送的,因此我会读取所有Outlook帐户设置的列表,以便用户可以从中选择“发送为”。

现在,当下面的代码读取Outlook中的所有设置帐户时,有些情况下会设置电子邮件ID / DL,需要从中发送邮件程序;但是这段代码没有列出那些允许它们被选中的代码。

For Each oAccount In outApp.Session.Accounts
    olAccountCollection.Add oAccount, oAccount.smtpaddress
    Sheet1.cboOLAccounts.AddItem oAccount.smtpaddress
Next

因此请求一些帮助以了解我如何从outlook中读取所有此类ID。

(一种替代解决方案可能是将该电子邮件ID硬编码为选择类型。但是不确定outlook是否允许通过excel宏从此电子邮件ID发送)

1 个答案:

答案 0 :(得分:0)

您的意思是说您需要可以用来代表当前Windows用户发送的电子邮件列表吗?

Outlook对象模型根本不公开该功能。

如果您使用的是扩展MAPI(C ++或Delphi),则可以将PR_EMS_AB_PUBLIC_DELEGATES属性(IMailUser :: OpenProperty)打开为IMAPITable。

您还可以使用兑换(任何语言)和RDOAddressEntry代表集合。