Selection.Item 方法 (Outlook)
返回所选内容的Microsoft Outlook项或对话头。
语法
表达式。项 (索引)
表达 一个代表“Selection”对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
Index | 必需 | Variant | 或者是对象的索引号,或者是用于匹配集合中某个对象的默认属性的值。 |
返回值
代表指定的项目或对话头 Object 。
备注
不做任何假设的 Item 方法返回类型;您的代码应该能够处理多个项目类型或一个 ConversationHeader 对象。 例如, Item 方法可以在收件箱文件夹中的根据 Selection.Location 属性的值,返回的 AppointmentItem 、 MailItem 、 MeetingItem 或 TaskItem 。
只有在 Selection 对象的 GetSelection 方法中指定 olConversationHeaders 时,Selection 集合才包含 ConversationHeader对象。
示例
下面的 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 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。