Поделиться через


Метод Conversation.GetTable (Outlook)

Возвращает объект Table , содержащий строки, представляющие все элементы диалога.

Синтаксис

выражение. GetTable

Выражение Переменная, представляющая объект Conversation.

Возвращаемое значение

Объект Table , содержащий строки, представляющие все элементы диалога.

Замечания

Метод GetTable возвращает таблицу , которая содержит все элементы диалога в виде строк. Набор столбцов по умолчанию показан в следующей таблице.

Столбец Свойство
1 EntryID
2 Тема
3 CreationTime
4 LastModificationTime
5 MessageClass

По умолчанию строки в таблице сортируются по свойству ConversationIndex элементов.

Чтобы изменить набор столбцов по умолчанию, используйте методы Add, Remove или RemoveAll объекта коллекции Columns .

Объект Table , возвращаемый этим методом GetTable , не включает элементы беседы, которые были перемещены в папку "Удаленные".

Пример

В следующем примере кода Visual Basic для приложений (VBA) предполагается, DemoConversationTableчто в инспекторе открыт почтовый элемент. DemoConversationTable получает объект Conversation на основе этого почтового элемента и вызывает метод GetTable для получения таблицы всех элементов беседы. Чтобы получить определенную информацию о каждом элементе беседы, которая может охватывать все магазины, DemoConversationTable добавляет в таблицу свойство https://schemas.microsoft.com/mapi/proptag/0x0FFB0102идентификатора записи в качестве столбца. Перечисляя DemoConversationTable каждый элемент (представленный строкой) в таблице, он использует свойство идентификатора записи в хранилище, соответствующее этому элементу, для вызова метода GetItemFromID объекта NameSpace для получения объекта элемента. Затем в примере отображается тема и количество вложений для этого элемента.

Примечание.

Перечисление беседы работает только в том случае, если учетная запись Outlook подключена к Microsoft Exchange Server, работающей по крайней мере Microsoft Exchange Server 2010, или Outlook работает в кэшированном режиме для Microsoft Exchange Server 2007.

Sub DemoConversationTable() 
 Dim oConv As Outlook.Conversation 
 Dim oTable As Outlook.Table 
 Dim oRow As Outlook.Row 
 Dim oMail As Outlook.MailItem 
 Dim oItem As Outlook.MailItem 
 Const PR_STORE_ENTRYID As String = _ 
 "https://schemas.microsoft.com/mapi/proptag/0x0FFB0102" 
 
 On Error Resume Next 
 ' Obtain the current item for the active inspector. 
 Set oMail = Application.ActiveInspector.CurrentItem 
 
 If Not (oMail Is Nothing) Then 
 ' Obtain the Conversation object. 
 Set oConv = oMail.GetConversation 
 If Not (oConv Is Nothing) Then 
 Set oTable = oConv.GetTable 
 oTable.Columns.Add (PR_STORE_ENTRYID) 
 Do Until oTable.EndOfTable 
 Set oRow = oTable.GetNextRow 
 ' Use EntryID and StoreID to open the item. 
 Set oItem = Application.session.GetItemFromID( _ 
 oRow("EntryID"), _ 
 oRow.BinaryToString(PR_STORE_ENTRYID)) 
 Debug.Print oItem.Subject, _ 
 "Attachments.Count=" & oItem.Attachments.count 
 Loop 
 End If 
 End If 
End Sub

См. также

Объект Conversation

Поддержка и обратная связь

Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.