如何通過Outlook VBA在列表中顯示聯繫人組的成員

立即分享:

一般來說,要查看聯繫人組的成員,您必須先打開它。 如果您希望直接在列表中查看聯繫人組成員而不打開它,您可以使用本文中分享的方法。

在上一篇文章中-“如何在Outlook聯繫人組中自動顯示成員計數”,您可以了解如何在列表中顯示群組成員的數量。 與此類似,很多用戶希望在單獨的欄目中直接顯示具體的群組成員。 因此,在這裡我們將教您如何實現它。

通過 Outlook VBA 在列表中顯示聯繫人組的成員

在列表中顯示聯繫人組的成員

  1. 首先,啟動Outlook應用程序。
  2. 然後,您可以按“Alt + F11”鍵訪問VBA編輯器。
  3. 在隨後的“Microsoft Visual Basic for Applications”窗口中,打開“ThisOutlookSession”項目。
  4. 接下來,將以下VBA代碼複製並粘貼到該項目中。
Private WithEvents olItems As Outlook.Items
Private objContactGroup As Outlook.DistListItem
Private objProperty As Outlook.UserProperty
Private strProperName As String
Private i As Long
Private objGroupMember As Outlook.recipient
Private strMemberName, strMembers As String

Private Sub Application_Startup()
    Set olItems = Application.Session.GetDefaultFolder(olFolderContacts).Items
    'Auto Update the members in group list on startup
    Call DisplayMembers
End Sub

'Auto Display the members of new Contact Group
Private Sub olItems_ItemAdd(ByVal Item As Object)
    If TypeOf objItem Is DistListItem Then
 
       strProperName = "Members"
       Set objProperty = objCurrentItem.UserProperties.Find(strProperName, True)
 
       Set objContactGroup = objItem
       Set objProperty = objContactGroup.UserProperties.Add(strProperName, olText, True)
 
       For i = 1 To objContactGroup.MemberCount
           Set objGroupMember = objContactGroup.GetMember(i)
           strMemberName = Split(objGroupMember.Address, "@")(0)
           strMemberName = UCase(Left(strMemberName, 1)) & Right(strMemberName, Len(strMemberName) - 1)
           strMembers = strMembers & strMemberName & "; "
       Next i

       objProperty.value = strMembers
       objContactGroup.Save
    End If
End Sub

Sub DisplayMembers()
    For Each objItem In olItems
        If TypeOf objItem Is DistListItem Then
           strProperName = "Members"
           Set objProperty = objItem.UserProperties.Find(strProperName, True)
 
           Set objContactGroup = objItem
           Set objProperty = objContactGroup.UserProperties.Add(strProperName, olText, True)
 
           'Get the names of all group members
           For i = 1 To objContactGroup.MemberCount
               Set objGroupMember = objContactGroup.GetMember(i)
               strMemberName = Split(objGroupMember.Address, "@")(0)
               strMemberName = UCase(Left(strMemberName, 1)) & Right(strMemberName, Len(strMemberName) - 1)
               strMembers = strMembers & strMemberName & "; "
           Next i
 
           objProperty.value = strMembers
           objContactGroup.Save
        End If
        strMembers = ""
    Next
End Sub

VBA代碼-在列表中顯示聯繫人組的成員

  1. 接下來,您應該單擊“Application_Startup”子程序並單擊工具欄中的“運行”圖標,將立即觸發該宏。
  2. 之後,退出VBA編輯器並繼續將“成員”字段添加到聯繫人組列表中。
  • 在“聯繫人”窗格中,訪問正確的文件夾。
  • 然後切換到“視圖”選項卡,單擊“更改視圖”並選擇“列表”。
  • 接下來點擊“查看設置”按鈕。
  • 之後,在新彈出的對話框中單擊“列”。
  • 在隨後的“顯示列”對話框中,按照下面屏幕截圖所示的步驟添加“成員”字段:添加“成員”字段
  1. 最後,您可以返回聯繫人文件夾。 您將在聯繫人組列表中看到成員,如下圖所示:列表中的群組成員
  2. 從現在開始,每次您tarOutlook 會自動更新每個聯繫人組的成員列表。
  3. 此外,Outlook 會自動獲取並在“成員”欄中顯示新聯繫人組的成員。

為Outlook腐敗做好充分準備

儘管 Outlook 功能豐富,但仍然無法避免損壞。 所以你必須對所有潛在的風險保持警惕。 毫無疑問,您需要為 PST 數據進行一致且最新的備份。 更重要的是,你最好保持卓越和可靠 PST修復 方便的工具,例如 DataNumen Outlook Repair.

作者簡介:

Shirley Zhang是的數據恢復專家 DataNumen,Inc.是數據恢復技術的全球領導者,包括 mdf修復 和Outlook修復軟件產品。 欲了解更多信息,請訪問 萬維網。datanumen.COM

立即分享:

評論被關閉。