Outlook) (Explorer.Selection 属性
返回一个或多个资源管理器窗口中选定的项目包含的 选择 对象。 此为只读属性。
语法
表达式。选择
表达 一个代表“Explorer”对象的变量。
备注
浏览器中的选定内容可以位于待办事项栏中的视图列表、约会列表或任务列表中,也可以位于日历视图中的日常任务列表中。 有关详细信息,请参阅 Location 属性。
选择 属性不包括任何对话头对象。 调用 Selection.GetSelection 方法,提供 olConversationHeaders 作为参数,以获取标题对象资源管理器中选定的对话。
如果当前文件夹显示文件夹主页,则此属性将返回空集合。 此外,如果选择了组标头(例如 Today)或对话组标头,则返回的 Selection 对象上的 Count 属性为零。
示例
下面的 Microsoft Visual Basic for Applications (VBA) 示例显示在活动资源管理器中每个选定项目的发件人。 它使用 Count 属性和要显示在活动资源管理器中选定的所有邮件的发件人的 Explorer.Selection 属性返回 选定内容 对象的 Item 方法。
Sub GetSelectedItems()
Dim myOlExp As Outlook.Explorer
Dim myOlSel As Outlook.Selection
Dim mySender As Outlook.AddressEntry
Dim oMail As Outlook.MailItem
Dim oAppt As Outlook.AppointmentItem
Dim oPA As Outlook.PropertyAccessor
Dim strSenderID As String
Const PR_SENT_REPRESENTING_ENTRYID As String = _
"http://schemas.microsoft.com/mapi/proptag/0x00410102"
Dim MsgTxt As String
Dim x As Long
MsgTxt = "Senders of selected items:"
Set myOlExp = Application.ActiveExplorer
Set myOlSel = myOlExp.Selection
For x = 1 To myOlSel.Count
If myOlSel.Item(x).Class = OlObjectClass.olMail Then
' For mail item, use the SenderName property.
Set oMail = myOlSel.Item(x)
MsgTxt = MsgTxt & oMail.SenderName & ";"
ElseIf myOlSel.Item(x).Class = OlObjectClass.olAppointment Then
' For appointment item, use the Organizer property.
Set oAppt = myOlSel.Item(x)
MsgTxt = MsgTxt & oAppt.Organizer & ";"
Else
' For other items, use the property accessor to get the sender ID,
' then get the address entry to display the sender name.
Set oPA = myOlSel.Item(x).PropertyAccessor
strSenderID = oPA.GetProperty(PR_SENT_REPRESENTING_ENTRYID)
Set mySender = Application.Session.GetAddressEntryFromID(strSenderID)
MsgTxt = MsgTxt & mySender.Name & ";"
End If
Next x
Debug.Print MsgTxt
End Sub
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。