我有一個函數,它接受一個名稱並在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
這是正確的。 –