Partilhar via


Enumerar, pesquisar e filtrar itens em uma pasta

O modelo de objeto do Outlook fornece vários pontos de entrada que dão suporte à enumeração, pesquisa e filtragem de itens em uma pasta.

Enumerando itens

Os objetos Itens, Tabela e Seleção dão suporte à enumeração de itens em uma pasta. No entanto, há cenários específicos em que você escolheria um em vez dos outros.

Você pode obter uma coleção Itens chamando Folder.Items que retorna os itens na pasta. Cada objeto de item na coleção é concluído com todas as suas propriedades internas explícitas e propriedades personalizadas e dá suporte a operações de gravação de leitura. A coleção Itens também dá suporte a filtros e eventos que disparam quando os itens são adicionados, alterados ou removidos da coleção.

Use Folder.GetTable ou Search.GetTable para obter um objeto Table que representa um conjunto de itens em uma pasta ou pasta de pesquisa. Em ambos os casos, você pode especificar um filtro para obter um subconjunto dos itens na pasta ou, se não especificar nenhum filtro, obtenha todos os itens na pasta. Por padrão, cada item na tabela retornada contém apenas um subconjunto de padrão de suas propriedades.

Você pode exibir cada linha de uma Tabela como um item na pasta, cada coluna como uma propriedade do item e a Tabela é um conjunto de linhas de peso leve na memória que permite enumeração rápida e filtragem de itens na pasta. Embora as adições e exclusões da pasta subjacente sejam refletidas pelas linhas na Tabela, a Tabela não dá suporte a eventos para adição, alteração e remoção de linhas.

Se precisar de um objeto gravável da linha da tabela, obter o ID de entrada dessa linha do padrão EntryID coluna da tabela e use o método GetItemFromID do objeto NameSpace para obter um item completo, como MailItem ou ContactItem, que suporta operações de leitura / gravação. Para obter mais informações sobre colunas padrão em uma Tabela, confira Propriedades efault exibidas em um objeto table.

O objeto Selection dá suporte à enumeração de itens que um usuário selecionou no momento em um explorador. Como o explorador exibe o conteúdo de uma pasta, o objeto Selection dá suporte à enumeração de itens nessa pasta de acordo com a seleção do usuário.

Nota Uma pasta no Outlook pode conter itens heterogêneos. Por exemplo, a pasta Contatos dá suporte à criação de itens de contato e itens de lista de distribuição por padrão. Como os objetos Itens, Tabela e Seleção encapsulam itens em uma pasta ou pasta de pesquisa, os itens neles não necessariamente têm a mesma classe de mensagem. Ao enumerar itens nessas coleções e objetos, é uma boa prática primeiro verificar a classe de mensagem de cada item antes de acessar as propriedades do item.

Pesquisar e filtrar itens

Os objetos Itens, Tabela, Aplicativo e Exibiçãodão suporte à pesquisa e filtragem de itens em uma pasta. A tabela a seguir descreve e compara estes pontos de entrada:

Ponto de entrada Action Objeto do Filtro de Pesquisa Suporte para filtro Jet Suporte para filtro DASL Comentários
Application.AdvancedSearch Define os critérios de um objeto Search e retorna o objeto Search . Search.Results especifica os resultados da pesquisa. Search.Save atualiza uma pasta de pesquisa com os resultados da pesquisa. Folder Não Sim
Folder.GetTable Retorna uma Tabela de itens em uma pasta com base em qualquer filtro determinado. Folder Sim Sim Não há suporte para determinadas propriedades no filtro Tabela , incluindo propriedades binárias, e conteúdo do corpo HTML ou RTF. Para obter mais informações, consulte Propriedades sem suporte em um objeto ou filtro Table.
Itens.Localizar Pesquisa o primeiro item que satisfaça o filtro especificado. Folder Sim Não Não há suporte para determinadas propriedades no filtro, incluindo Corpo. Para obter mais informações, consulte Itens.Localizar.
Itens.Restringir Filtra determinado conjunto de itens com base em restrições especificadas e retorna outra coleção Itens . Folder Sim Sim Não há suporte para determinadas propriedades no filtro, por exemplo, Body. Para obter mais informações, consulte Items.Restrict.
Search.GetTable Retorna uma Tabela de itens em uma pasta de pesquisa com base em qualquer filtro derivado de Application.AdvancedSearch. Pasta pesquisar Não Sim Search.GetTable deriva seu filtro do objeto Search (especificamente a propriedade Search.Filter ) retornado do Application.AdvancedSearch.
Table.Restrict Filtra linhas na tabela determinada com base em um filtro especificado e retorna outro objeto Table . Folder Sim Sim Não há suporte para determinadas propriedades no filtro Tabela , incluindo propriedades binárias, e conteúdo do corpo HTML ou RTF. Para obter mais informações, consulte Propriedades sem suporte em um objeto ou filtro Table.
Exibir.Filtrar Define o filtro de uma exibição sem alterar o XML do modo de exibição. Definir o filtro para um modo de exibição só altera a exibição na interface do usuário e não resulta em uma coleção de itens filtrados. Folder Não Sim
View.XML Obtém ou define o XML para uma exibição. Modificar o <nó Filtro> altera o filtro do modo de exibição. A configuração do XML para uma exibição só altera a exibição na interface do usuário e não resulta em uma coleção de itens filtrados. Folder Não Sim Exibir XML está sendo preterido. Use o modelo de objeto Exibir para exibir exibições.

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.