我有一个函数,它接受一个名称并在Outlook中解析它以返回所选名称的别名。当地址簿中的选定名称有多个条目时,这将失败。例如“史密斯,鲍勃”&“史密斯,鲍勃X”。如果我试图解决的名称是“Smith,Bob X”,则代码可以正常工作,但普通的“Smith,Bob”会失败。解析Outlook收件人时选择多个条目的第一个条目
我认为当找到多个条目时,Outlook会打开“检查姓名”对话框(当我手动解析姓名时会发生这种情况)。
当我的代码找到多个条目时,如何选择第一个条目?
Function GETTPX(ByVal UserName As String) As String
Dim objOL As Object
Dim oRecip As Outlook.Recipient
Dim oEU As Outlook.ExchangeUser
Dim oEDL As Outlook.ExchangeDistributionList
Set objOL = CreateObject("Outlook.Application")
Set oRecip = objOL.Session.CreateRecipient(UserName)
oRecip.Resolve
If oRecip.Resolved Then
Set oEU = oRecip.AddressEntry.GetExchangeUser
End If
GETTPX = oEU.Alias
Set oRecip = Nothing
Set objOL = Nothing
End Function
我正在使用工作计算机,所以下载任何东西都不会是我的选择。所以我想这不是我能用VBA实现的事情吗? – StevenWalker
这是正确的。 –