【问题标题】:Mail categories邮件类别
【发布时间】:2014-05-24 08:29:07
【问题描述】:

如何获得组收件箱中所有颜色类别的列表。我知道如何将“MAPI”命名空间中所有类别的列表打印到 msgbox,但这些与我的组收件箱中的不同。我怎样才能获得/打印后者?

以下代码取自微软网站:

Private Sub ListCategoryColors()
 Dim objNameSpace As NameSpace
 Dim objCategory As Category
 Dim strOutput As String

 ' Obtain a NameSpace object reference.
 Set objNameSpace = Application.GetNamespace("MAPI")

 ' Check if the Categories collection for the Namespace
 ' contains one or more Category objects.
 If objNameSpace.Categories.Count > 0 Then

 ' Enumerate the Categories collection, checking
 ' the value of the Color property for
 ' each Category object.
 For Each objCategory In objNameSpace.Categories

 ' Add the name of the Category object to
 ' the output string.
 strOutput = strOutput & objCategory.Name

 ' Add information about the assigned color
 ' to the output string.
 Select Case objCategory.Color

 Case Else
 strOutput = strOutput & ": Unknown" & vbCrLf
 End Select
 Next
 End If

 ' Display the output string.
 MsgBox strOutput

 ' Clean up.
 Set objCategory = Nothing
 Set objNameSpace = Nothing

End Sub

【问题讨论】:

    标签: vba outlook


    【解决方案1】:

    类别存储在收件箱文件夹中消息类别为“IPM.Configuration.CategoryList”的隐藏消息中 - 您可以在OutlookSpy 中看到它:转到收件箱文件夹,单击 IMAPIFolder 按钮转到“关联内容”选项卡,双击 PR_MESSAGE_CLASS = "IPM.Configuration.CategoryList" 的消息,找到 PR_ROAMING_XMLSTREAM 属性。

    您可以使用 Outlook 对象模型(使用 MAPIFolder.GetStorage)访问它,也可以使用 Redemption - 它公开 RDOStore2.Categories 集合。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-11-28
      • 2018-10-22
      • 1970-01-01
      • 1970-01-01
      • 2019-07-19
      • 1970-01-01
      相关资源
      最近更新 更多