Método Table.Restrict (Outlook)

Aplica um filtro às linhas na tabela e obtém um novo objeto Table.

Sintaxe

expression. Restrict( _Filter_ )

Expressão Uma variável que representa um objeto Table .

Parâmetros

Nome Obrigatório/Opcional Tipo de dados Descrição
Filtro Obrigatório String Especifica os critérios para as linhas do objeto Table.

Valor de retorno

Um objeto Table que é retornado aplicando Filtro às linhas no objeto Table pai.

Comentários

Você só pode usar Restrict para aplicar outro filtro para essa tabela se o objeto pai da tabela é um objeto Folder. Se o objeto pai é um objeto de pesquisa, Restrict retornará um erro.

Como o filtro é aplicado às linhas no objeto Table , isso é equivalente à aplicação de um filtro que é um AND lógico de Filtro e todos os filtros anteriores aplicados ao mesmo objeto Table .

O filtro é uma consulta em propriedades especificadas de itens que são representados como linhas na Tabela pai. A consulta usa a sintaxe do Microsoft Jet ou a sintaxe do DAV Searching and Locating (DASL). Por exemplo, o seguinte filtro Jet e filtro DASL especificam os mesmos critérios para itens com LastModificationTime anteriores ao 3:30 pm de 12 de junho de 2005:

criteria = "[LastModificationTime] < '" & Format$("6/12/2005 3:30PM","General Date") & "'"criteria = "@SQL=" & Chr(34) & "DAV:getlastmodified" & Chr(34) 
 & " < '" & Format$("6/12/2005 3:30PM","General Date") & "'" 

Para obter mais informações sobre como especificar filtros para o objeto Table, consulte Filtrando itens.

Se Filter contiver propriedades personalizadas, essas propriedades devem existir na pasta pai do objeto Table para que a restrição funcione corretamente. Determinadas propriedades não são suportadas em um filtro de tabela, incluindo propriedades binárias, propriedades computadas e conteúdo do corpo HTML ou RTF. Para obter mais informações, consulte Propriedades sem suporte em um objeto ou filtro Table.

Se Filter for uma cadeia de caracteres em branco, Restrict retornará um objeto Table idêntico ao objeto Table pai.

Exemplo

O exemplo de código a seguir aplica um filtro Jet em itens da caixa de entrada para obter itens com um LastModificationTime maior que 1 de novembro de 2005. Em seguida, imprime os valores das propriedades padrão para esses itens na caixa de entrada: EntryID, Subject, CreationTime, LastModificationTime e MessageClass.

Observação

[!OBSERVAçãO] Desde que itens heterogêneos podem existir na mesma pasta no Outlook, os itens retornados de aplicação do filtro na caixa de entrada podem ser de diferentes tipos. Em geral, antes de acessar todas as propriedades que não estão entre as propriedades padrão de itens na caixa de entrada, você deve verificar MessageClass do item.

Sub RestrictTable() 
 '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 November 1, 2005 
 Filter = "[LastModificationTime] > '11/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("EntryID")) 
 Debug.Print (oRow("Subject")) 
 Debug.Print (oRow("CreationTime")) 
 Debug.Print (oRow("LastModificationTime")) 
 Debug.Print (oRow("MessageClass")) 
 Loop 
End Sub

Confira também

Objeto Table

Suporte e comentários

Tem dúvidas ou quer enviar comentários sobre o VBA para Office ou sobre esta documentação? Confira Suporte e comentários sobre o VBA para Office a fim de obter orientação sobre as maneiras pelas quais você pode receber suporte e fornecer comentários.