Folder.GetTable 方法 (Outlook)

获取一个 Table 对象,该对象包含按 Filter 筛选的项。

语法

expressionGetTable( _Filter_ , _TableContents_ )

表达 一个代表“Folder”对象的变量。

参数

名称 必需/可选 数据类型 说明
Filter 可选 字符串 Microsoft Jet 或 DAV 搜索和定位 (DASL 中的筛选器) 语法,用于指定父 文件夹中项的条件。
TableContents 可选 OlTableContents GetTable 返回文件夹中指定项目的类型。 默认值为 olUserItems

返回值

一个 Table,其中包含父 Folder 中符合 Filter 中的条件的项目。 默认情况下,TableContentsolUserItems,而且返回的 Table 仅包含未隐藏的已筛选项目。

备注

如果 Filter 是一个空字符串或者省略了 Filter 参数,则 GetTable 返回一个 Table,其中各行分别代表 Folder 中的所有项目。 如果 Filter 是一个空字符串或者省略了 Filter 参数,而且 TableContentsolHiddenItems,则 GetTable 返回一个 Table,其中各行分别代表 Folder 中的所有隐藏项目。

有关筛选器的详细信息,请参阅 筛选项按命名空间引用属性

GetTable 返回一个 Table,包含父 Folder 的文件夹类型的默认列集合。 若要修改默认列集合,使用 添加删除拔出所有的列 集合对象的方法。 如果 TableContentsolHiddenItems,则默认列集合将始终是邮件文件夹的默认列集合,即使父 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 支持和反馈,获取有关如何接收支持和提供反馈的指南。