有没有办法以编程方式修改电子邮件(MailItem
实例)的Outlook收件箱列表中的背景颜色?我想创建一个加载项,允许我根据一些规则对我的电子邮件进行颜色编码。
我已经浏览了documentation中的MailItem属性,但无法找到任何与显示格式相关的内容。
答案 0 :(得分:2)
MailItem类不提供任何内容。相反,您需要在Outlook中自定义视图。
您可以使用Folder或Explorer类的CurrentView属性来获取表示当前视图的View对象。要获取当前Explorer视图的View对象,请使用Explorer.CurrentView而不是Explorer.CurrentFolder返回的当前Folder对象的CurrentView属性。
View对象允许您创建可自定义的视图,以便您更好地对所有不同类型的数据进行排序,分组和最终查看。有多种不同的视图类型可提供创建和维护重要数据所需的灵活性。
使用View对象的XML属性定义和自定义视图。 XML属性允许您创建和设置定义视图各种功能的自定义XML架构。
Private Sub FormatHandoffMessages()
Dim objView As TableView
Dim objRule As AutoFormatRule
' Check if the current view is a table view.
If Application.ActiveExplorer.CurrentView.ViewType = olTableView Then
' Obtain a TableView object reference to the current view.
Set objView = Application.ActiveExplorer.CurrentView
' Create a new rule that displays any message with a
' subject line that starts with "HANDOFF" in
' blue, bold, 8 point Courier New text.
Set objRule = objView.AutoFormatRules.Add("Handoff Messages")
With objRule
.Filter = """http://schemas.microsoft.com/mapi/proptag/0x0037001f""" & _
" CI_STARTSWITH 'HANDOFF'"
With .Font
.Name = "Courier New"
.Size = "8"
.Bold = True
.Color = olColorBlue
End With
End With
' Save and apply the table view.
objView.Save
objView.Apply
End If
End Sub