我是新来的VBA,我需要帮助做些事情:如何从Outlook联系人中获取列中列出的姓名的电子邮件地址?
如下图所示,我有一个名称列表。而我想要做的是从outlook联系人列表(根据他们在列A中的姓名)(电子邮件地址分散在不同的联系人文件夹中)将他们的电子邮件地址检索并粘贴到列B中。
或者,是可能获得从Outlook联系人的电子邮件地址,每个名称和Outlook会自动发送一封电子邮件给他们,让我可以摆脱塔B的
我是新来的VBA,我需要帮助做些事情:如何从Outlook联系人中获取列中列出的姓名的电子邮件地址?
如下图所示,我有一个名称列表。而我想要做的是从outlook联系人列表(根据他们在列A中的姓名)(电子邮件地址分散在不同的联系人文件夹中)将他们的电子邮件地址检索并粘贴到列B中。
或者,是可能获得从Outlook联系人的电子邮件地址,每个名称和Outlook会自动发送一封电子邮件给他们,让我可以摆脱塔B的
此代码假定的名字都在列A 。它进一步假定您正在使用的地址簿的名称被命名为“联系人”,并且它们根据您的图表进行格式化。
Option Explicit
Private Sub GetAddresses()
Dim o, AddressList, AddressEntry
Dim c As Range, r As Range, AddressName As String
Set o = CreateObject("Outlook.Application")
Set AddressList = o.Session.AddressLists("Contacts")
'Change this range accordingly
Set r = Range("A1:A25")
For Each c In r
AddressName = c.Value
For Each AddressEntry In AddressList.AddressEntries
If AddressEntry.Name = AddressName Then
c.Offset(0, 1).Value = AddressEntry.Address
Exit For
End If
Next AddressEntry
Next c
End Sub
如果地址位于全局地址列表中,请在Outlook中转至工具 - >地址簿。然后使用下拉列表来标识您的地址列表。用代码中的“联系人”替换地址簿中存储的地址簿的名称。
我没有写这个,我发现它在Ozgrid并修改了几件事情以适应您的情况。它可能需要调整你的应用程序。希望这会有所帮助或让你朝着正确的方向前进。
你应该可以直接导入所有没有任何VBA代码的联系人。这里是描述如何做的链接。
https://www.ablebits.com/office-addins-blog/2014/06/12/import-contacts-excel-outlook/
https://www.extendoffice.com/documents/outlook/1116-outlook-export-contact-to-excel.html
你可能有兴趣在钩住GAL为好。请查看下面的链接。
这一切都有可能。但要获得这里的帮助,您需要展示自己的努力。在某个地方启动你的代码,这样你就可以声称会“卡住”,有人会帮你进一步去做一两步。 – Variatus