Folder.GetTable 方法 (Outlook)
获取一个 Table 对象,该对象包含按 Filter 筛选的项。
语法
expression。 GetTable
( _Filter_
, _TableContents_
)
表达 一个代表“Folder”对象的变量。
参数
名称 | 必需/可选 | 数据类型 | 说明 |
---|---|---|---|
Filter | 可选 | 字符串 | Microsoft Jet 或 DAV 搜索和定位 (DASL 中的筛选器) 语法,用于指定父 文件夹中项的条件。 |
TableContents | 可选 | OlTableContents | GetTable 返回文件夹中指定项目的类型。 默认值为 olUserItems。 |
返回值
一个 Table,其中包含父 Folder 中符合 Filter 中的条件的项目。 默认情况下,TableContents 为 olUserItems,而且返回的 Table 仅包含未隐藏的已筛选项目。
备注
如果 Filter 是一个空字符串或者省略了 Filter 参数,则 GetTable 返回一个 Table,其中各行分别代表 Folder 中的所有项目。 如果 Filter 是一个空字符串或者省略了 Filter 参数,而且 TableContents 为 olHiddenItems,则 GetTable 返回一个 Table,其中各行分别代表 Folder 中的所有隐藏项目。
有关筛选器的详细信息,请参阅 筛选项 和 按命名空间引用属性。
GetTable 返回一个 Table,包含父 Folder 的文件夹类型的默认列集合。 若要修改默认列集合,使用 添加 、 删除 或 拔出所有的列 集合对象的方法。 如果 TableContents 为 olHiddenItems,则默认列集合将始终是邮件文件夹的默认列集合,即使父 Folder 可能是其他文件夹(例如“联系人”文件夹)也是如此。 有关默认列集合的详细信息,请参阅Table 对象中显示的默认属性。
使用 Table.Restrict 将后续筛选器应用于基于 Folder 对象的 Table。
示例
下面的代码示例演示如何根据“收件箱”中项目的 LastModificationTime 使用 Folder.GetTable 来获取 Table 对象。 它枚举并打印这些项目的默认属性的几个值。
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)
'Enumerate the table using test for EndOfTable
Do Until (oTable.EndOfTable)
Set oRow = oTable.GetNextRow()
Debug.Print (oRow("Subject"))
Debug.Print (oRow("LastModificationTime"))
Loop
End Sub
另请参阅
支持和反馈
有关于 Office VBA 或本文档的疑问或反馈? 请参阅 Office VBA 支持和反馈,获取有关如何接收支持和提供反馈的指南。