Объект Table (Outlook)
Представляет набор данных элемента из объекта Folder или Search с элементами в виде строк таблицы, а свойства — столбцами таблицы.
Замечания
Таблица представляет динамический набор строк, доступный только для чтения, в объекте Folder или Search. Используйте Folder.GetTable или Search.GetTable , чтобы получить объект Table , представляющий набор элементов в папке или папке поиска. Если объект Table получен из Folder.GetTable, можно дополнительно указать фильтр (в Table.Restrict), чтобы получить подмножество элементов в папке. Если не указать фильтр, вы получите все элементы в папке.
По умолчанию каждый элемент возвращаемой таблицы содержит только подмножество свойств по умолчанию. Каждую строку таблицы можно рассматривать как элемент в папке, каждый столбец — как свойство элемента, а таблицу — как упрощенный набор строк в памяти, который позволяет быстро перечислять и фильтровать элементы в папке. Хотя добавление и удаление базовой папки отражаются строками в таблице, таблица не поддерживает никаких событий для добавления, изменения и удаления строк. Если требуется записываемый объект из строки Table , получите идентификатор записи для этой строки из столбца EntryID по умолчанию в таблице , а затем используйте метод GetItemFromID объекта NameSpace , чтобы получить полный элемент, например MailItem или ContactItem, поддерживающий операции чтения и записи. Дополнительные сведения о столбцах по умолчанию в таблице см. в разделе Свойства по умолчанию, отображаемые в объекте таблицы.
Дополнительные сведения об объекте Table см. в разделе Перечисление, поиск и фильтрация элементов в папке.
Пример
В следующем примере кода показано, как объект Table может возвращать отфильтрованный набор элементов на основе их свойства LastModificationTime . Здесь также показано, как вывести список свойств по умолчанию, а также конкретных свойств элементов.
Sub DemoTable()
'Declarations
Dim Filter As String
Dim oRow As Outlook.Row
Dim oTable As Outlook.Table
Dim oFolder As Outlook.Folder
'Get a Folder object for the Inbox
Set oFolder = Application.Session.GetDefaultFolder(olFolderInbox)
'Define Filter to obtain items last modified after May 1, 2005
Filter = "[LastModificationTime] > '5/1/2005'"
'Restrict with Filter
Set oTable = oFolder.GetTable(Filter)
'Remove all columns in the default column set
oTable.Columns.RemoveAll
'Specify desired properties
With oTable.Columns
.Add ("Subject")
.Add ("LastModificationTime")
'PR_ATTR_HIDDEN referenced by the MAPI proptag namespace
.Add ("http://schemas.microsoft.com/mapi/proptag/0x10F4000B")
End With
'Enumerate the table using test for EndOfTable
Do Until (oTable.EndOfTable)
Set oRow = oTable.GetNextRow()
Debug.Print (oRow("Subject"))
Debug.Print (oRow("LastModificationTime"))
Debug.Print (oRow("http://schemas.microsoft.com/mapi/proptag/0x10F4000B"))
Loop
End Sub
Методы
Имя |
---|
FindNextRow |
FindRow |
GetArray |
GetNextRow |
GetRowCount |
MoveToStart |
Restrict |
Sort |
Свойства
Имя |
---|
Application |
Class |
Columns |
EndOfTable |
Parent |
Session |
См. также
Справочник по объектной модели Outlook для элементов объектов таблицы
Поддержка и обратная связь
Есть вопросы или отзывы, касающиеся Office VBA или этой статьи? Руководство по другим способам получения поддержки и отправки отзывов см. в статье Поддержка Office VBA и обратная связь.
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по