我有一个小的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发送)
答案 0 :(得分:0)
您的意思是说您需要可以用来代表当前Windows用户发送的电子邮件列表吗?
Outlook对象模型根本不公开该功能。
如果您使用的是扩展MAPI(C ++或Delphi),则可以将PR_EMS_AB_PUBLIC_DELEGATES属性(IMailUser :: OpenProperty)打开为IMAPITable。
您还可以使用兑换(任何语言)和RDOAddressEntry。代表集合。