【问题标题】:Is it possible to add / remove members of an Exchange Distribution List using VBA?是否可以使用 VBA 添加/删除 Exchange 分发列表的成员?
【发布时间】:2014-05-10 15:08:58
【问题描述】:

是否可以使用 VBA 添加/删除 Exchange 分发列表的成员?

我可以使用以下代码循环访问成员,但似乎无法添加新成员。

Dim olApp As New Outlook.Application 'Start instance of Outlook
Dim olNS As Outlook.NameSpace 'Reference the Outlook namespace and use MAPI
Set olNS = olApp.GetNamespace("MAPI") 'Open the AddressList you want to use
Dim olAddressList As Outlook.AddressList
Set olAddressList = olNS.AddressLists("Global Address List")

olAddressList.AddressEntries.Item(DLList).Members.Item (1).name

【问题讨论】:

    标签: vba outlook exchange-server


    【解决方案1】:

    快速回答是否定的,您不能使用带有 Exchange Web 服务的 VBA 添加和删除 Exchange 通讯组的成员。通讯组在 Exchange 服务器上进行管理,我知道使用代码管理这些组的唯一方法是使用 Exchange 命令行管理程序或 API 中的 cmdlet 来修改 Active Directory。我最近在 MSDN 上发表了一篇关于 EWS 通讯组的文章,其中有一个部分列出了可用的 cmdlet:

    Managing distribution groups by using the Exchange Management Shell

    使用这些 cmdlet 创建脚本后,您可以使用 Shell() 函数从 VBA 代码调用脚本。我自己没有这样做,但我在其他论坛上看到过人们在这方面取得了一些成功的帖子。这是另一篇文章的链接,可帮助您入门,其中显示了 Excel 中调用脚本的 VBA 示例:

    Can I pass a VBA variable into a called Powershell script?

    我希望这些信息对您有所帮助。如果这确实解决了您的问题,请将此帖子标记为已回答。

    谢谢,

    --- 鲍勃 ---

    【讨论】:

    • 谢谢鲍勃,这确实给了我正在寻找的答案。不幸的是,我目前无法使用 Visual Studio,因此我将不得不继续以手动方式进行操作。从好的方面来说,我编写了一些 SendKeys,它们可以提供一定程度的自动化。
    【解决方案2】:

    鲍勃不正确。您绝对可以通过 VBA 管理 DL 成员资格。我一直都这样做。您可以通过 ADSI 管理组成员资格,并且有一个有据可查的 API 来执行此操作。以下是我为此编写的一些函数:

    http://naterice.com/articles/62

    【讨论】:

    • 谢谢,Nathan,我会检查一下并回复您。如果我能让这个工作,你会让我的生活变得更轻松!
    • Nathan,请原谅我对 ADSI 的天真,但是在您的代码中,您指的是“组”和“用户”,这是否指的是“交换分发列表”和“成员的分别?我看不到对 Outlook、Exchange 或联系人的任何引用。提前致谢。
    • Exchange 通讯组列表只是 AD 组,其成员是启用邮件的 AD 用户。您可以像在 AD 中将用户添加到 DL 一样将用户添加到组中。
    • 谢谢,内森。我已经阅读了一些关于 ADSI 的资料,并针对我的情况进行了测试。您的代码访问的所有组似乎都处于最高级别。我想知道有没有办法从分发列表中进行备份以找到它的父母?这应该允许我通过您的代码访问它。还是我完全看错了?
    • 更多在线研究,我必须使用LDAP吗?我现在有了联系人和 DL 的地址
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-01
    • 1970-01-01
    • 2011-09-13
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-29
    相关资源
    最近更新 更多