簡體   English   中英

按用戶 ID 在 Outlook 中搜索聯系人

[英]Searching contact in Outlook by UserID

我想要實現的是通過用戶 ID 在 Outlook 中查找聯系人。 這是我正在使用的代碼的一瞥(使用來自本論壇其他線程的提示匯總):

Sub Lookup_address_book (a as Integer, thissheet as Worksheet, myrange as Range)

Dim myoutapp as Object
Dim myNameSpace as NameSpace
Dim myAddrList as AddressList
Dim myAddrEntry as AddressEntry
Dim alias as String
Dim cell as Range

Set myoutapp = CreateObject("Outlook.Appliation")
Set myNameSpace = myoutapp.GetNameSpace("MAPI")
Set myAddrList = myNameSpace.AddressLists("All Users")

With thissheet

For Each cell In myrange
alias = .Cells(cell.row,a)
Set myAddrEntry = myAddrList.AddressEntries(alias)
.Cells(cell.row,a+1) = myAddrEntry.Name
.Cells(cell.row,a+1) = myAddrEntry.GetExchangeUser.Department
Next
End With
End Sub

好吧,代碼有效,但效果不是我所期望的。 我通過他們的 usderID 查找人,例如。 d588588 這將表明,讓我們說,一個 Doe,約翰。 但是,當我查找 ID 時,Outlook 會在列表中找到我姓氏以 D 開頭的第一個人,例如。 丹尼爾斯,喬。 我想發生的是,默認情況下,搜索僅按名稱進行,如屏幕截圖所示。 通過自己輸入 ID 對此進行了測試,我得到了與宏給我的相同的結果。

地址簿

如果我在啟用更多列選項的情況下進行搜索,我就能找到正確的人。 我一直試圖找到一種方法讓我的宏在其他領域看起來,但沒有運氣。 我已經查看了整個 OOM,但找不到任何可以幫助我的東西。

有沒有辦法讓宏在其他字段中查找 ID,而不是僅查找姓名,並讓我得到具有此 ID 的人的姓名,而不是姓氏以與 ID 相同的字母開頭的人的姓名?

調用Namespace.CreateRecipient / Recipient.Resolve - GAL 提供程序將能夠通過登錄別名進行解析。 擁有 Recipient 對象后,使用Recipient.Name屬性

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM