以程式設計方式變更所有連絡人的顯示格式
在 Outlook 中,您可以指定如何透過 [連絡人] 選項提出新連絡人的預設設定,以及建立新連絡人時的預設設定。 例如,預設值是 [姓氏, 名字],這會依據「姓氏後面接著名字」的格式,將連絡人歸檔。 然而,變更此設定只會套用至新建立的連絡人。 對於已經存在的連絡人,如果您想要變更其名稱的歸檔方式,例如,從預設的 Last、First 變更為 First、Last,您必須針對偵測器中的每個現有連絡人個別執行,或者,您必須撰寫宏來變更 [連絡人] 資料夾中所有現有連絡人的設定。
本主題示範的程式碼範例會流覽預設 [連絡人] 資料夾中的所有連絡人專案,並使用每個 Contact 專案的 FileAs 屬性來指定要將連絡人檔案的字串;在此特定範例中,字串會變更為名字,後面接著空白,然後是姓氏。 程式碼範例接著會將變更儲存至連絡人項目。
注意 一般而言,Outlook 中的資料夾可以包含異質性專案,而 Contact 資料夾可以包含 ContactItem 物件以及其他專案。 程式碼範例會藉由篩選郵件類別 IPM.Contact,確保只變更 [連絡人] 項目的歸檔格式。 如需項目類型和郵件類別的詳細資訊,請參閱項目類型和郵件類別。
Private Sub ReFileContacts()
Dim items As items, item As ContactItem, folder As folder
Dim contactItems As Outlook.items
Dim itemContact As Outlook.ContactItem
Set folder = Session.GetDefaultFolder(olFolderContacts)
Set items = folder.items
Count = items.Count
If Count = 0 Then
MsgBox "Nothing to do!"
Exit Sub
End If
'Filter on the message class to obtain only contact items in the folder
Set contactItems = items.Restrict("[MessageClass]='IPM.Contact'")
For Each itemContact In contactItems
itemContact.FileAs = itemContact.FirstName + " " + itemContact.LastName
itemContact.Save
Next
MsgBox "Your contacts have been re-filed."
End Sub
支援和意見反應
有關於 Office VBA 或這份文件的問題或意見反應嗎? 如需取得支援服務並提供意見反應的相關指導,請參閱 Office VBA 支援與意見反應。
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應