Ação de macro AplicarFiltro

Importante :  Este artigo foi traduzido por um sistema de tradução automática, leia o aviso de isenção de responsabilidade. Para sua referência, veja a versão em inglês deste artigo aqui.

Você pode usar a ação AplicarFiltro para aplicar um filtro, um consulta ou uma cláusula SQL WHERE a uma tabela, formulário ou relatório para restringir ou classificar os registros na tabela ou os registros da tabela ou consulta do formulário ou relatório subjacente. Para relatórios, você pode usar esta ação somente em um macro especificado pela propriedade de evento OnOpen do relatório.

Observação : Você pode usar esta ação para aplicar uma cláusula SQL WHERE somente ao aplicar um filtro de servidor. Um filtro de servidor não pode ser aplicado à fonte de registro de um procedimento armazenado.

Observação : A ação de macro AplicarFiltro não está disponível no Access web apps.

Configuração

A ação AplicarFiltro tem os seguintes argumentos.

Argumento da ação

Descrição

Nome do Filtro

O nome de um filtro ou consulta que restringe ou classifica os registros da tabela, formulário ou relatório. Você pode inserir o nome de uma consulta existente ou um filtro que foi salvo como uma consulta na caixa Nome do filtro na seção Argumentos da ação do painel de construtor de macros.

Observação : Quando você estiver usando esta ação para aplicar um filtro de servidor, o argumento Nome do filtro deve estar em branco.

Condição onde

Uma cláusula SQL WHERE válida (sem a palavra onde) ou um expressão que restringe os registros da tabela, formulário ou relatório.

Observação : Em uma expressão de argumento Condição onde , o lado esquerdo da expressão normalmente contém um nome de campo da tabela ou consulta subjacente do formulário ou relatório. Lado direito da expressão normalmente contém o critérios que você deseja aplicar a esse campo para restringir ou classificar os registros. Por exemplo, os critérios podem ser o nome de um controle em outro formulário que contém o valor que você deseja que os registros no primeiro formulário para fazer a correspondência. O nome do controle deve ser totalmente qualificado, por exemplo:

Formulários ! nome do formulário! nome do controle

Nomes de campo devem ficar entre aspas duplas e seqüências literais devem ficar entre aspas simples.

O comprimento máximo do argumento Condição onde é 255 caracteres. Se você precisar inserir uma cláusula SQL WHERE maior, use o método de AplicarFiltro do objeto DoCmd em um Visual Basic para módulo Applications (VBA). Você pode inserir instruções cláusula SQL WHERE de até 32.768 caracteres no VBA.


Observação : Se você já tiver definido um filtro que forneça os dados apropriados, você pode usar o argumento Nome do filtro . Você pode usar o argumento Condição onde para inserir os critérios de restrição diretamente. Se você usar os dois argumentos, Access aplica a cláusula WHERE aos resultados do filtro. Você deve usar um ou ambos os argumentos.

Comentários

Você pode aplicar um filtro ou consulta a um formulário no modo Formulário ou modo Folha de Dados.

O filtro e a condição WHERE que você aplica se tornam a definição da propriedade Filter ou ServerFilter do formulário ou do relatório.

Para tabelas e formulários, essa ação é semelhante a clicar em Aplicar filtro/classificar ou Aplicar filtro do servidor no menu registros. O comando do menu aplica o filtro mais recentemente criado à tabela ou formulário, enquanto a ação AplicarFiltro aplica um filtro ou consulta especificados.

Em um banco de dados do Access, se você apontar para filtro no menu registros e clique em Filtrar/classificar avançado após executar a ação AplicarFiltro , a janela Filtrar/Classificar Avançado mostra os critérios de filtro selecionados com essa ação.

Para remover um filtro e exibir todos os registros de uma tabela ou formulário em um banco de dados de Access, você pode usar a ação MostrarTodosRegistros ou o comando Filtrar/classificar remover no menu registros. Para remover um filtro em um projeto do Access (. adp), você pode retornar à janela Filtro do Servidor por Formulário e remover todos os critérios de filtro e, em seguida, clique em Aplicar filtro do servidor no menu registros na barra de ferramentas ou defina a propriedade FiltroDoServidorPorFormulário como False (0).

Quando você salva uma tabela ou formulário, o Access salva qualquer filtro definido atualmente no objeto, mas não aplicar o filtro automaticamente na próxima vez que o objeto é aberto (embora ele automaticamente aplicará qualquer classificação aplicada ao objeto antes de ser salvo). Se você quiser aplicar um filtro automaticamente quando um formulário é aberto pela primeira vez, especifique uma macro contendo a ação AplicarFiltro ou um procedimento de evento contendo o método AplicarFiltro do objeto DoCmd como a configuração de propriedade de evento OnOpen do formulário. Você também pode aplicar um filtro usando a ação AbrirFormulário ou AbrirRelatório ou seus métodos correspondentes. Para aplicar um filtro automaticamente quando uma tabela é aberto pela primeira vez, você pode abrir a tabela usando uma macro contendo a ação AbrirTabela , seguida imediatamente da ação AplicarFiltro .

Exemplo

Aplicar um filtro usando uma macro

A macro a seguir contém um conjunto de ações, que filtram os registros para um formulário de lista de telefone do cliente. Ela mostra o uso das ações AplicarFiltro, MostrarTodosRegistrose IrParaControle . Ele também mostra o uso de condições para determinar qual botão de alternância em um grupo de opções foi selecionado no formulário. Cada linha de ação está associada a um botão de alternância que seleciona o conjunto de registros que começam com A, B, C e assim por diante ou todos os registros. Essa macro deve ser anexada ao evento AfterUpdate do grupo de opções CompanyNameFilter.

Condição

Ação

Argumentos: configuração

Comentário

[CompanyNameFilters] = 1

AplicarFiltro

Condição onde: [NomeDaEmpresa] como "[AÀÁÂÃÄ] *"

Filtro para nomes de empresa que começam com A, À, Á, Â, Ã ou Ä.

[CompanyNameFilters] = 2

AplicarFiltro

Condição onde: [NomeDaEmpresa] como "B *"

Filtro para nomes de empresa que começam com B.

[CompanyNameFilters] = 3

AplicarFiltro

Condição onde: [NomeDaEmpresa] como "[CÇ] *"

Filtro para nomes de empresa que começam com C ou Ç.

... Linhas de ação de D a Y têm o mesmo formato À C...

[CompanyNameFilters] = 26

AplicarFiltro

Condição onde: [NomeDaEmpresa] como "[ZÆØÅ] *"

Filtro para nomes de empresa que começam com Z, Æ, Ø ou Å.

[CompanyNameFilters] = 27

MostrarTodosRegistros

Mostre todos os registros.

[RecordsetClone]. [RecordCount] > 0

IrParaControle

Nome do controle: NomeEmpresa

Se os registros são retornados para a letra selecionada, mova o foco para o controle NomeDaEmpresa.


Observação : Aviso de Isenção de Tradução Automática: Este artigo foi traduzido por computador, sem intervenção humana. A Microsoft oferece essas traduções automáticas para ajudar as pessoas que não falam inglês a aproveitar os textos escritos sobre produtos, serviços e tecnologias da Microsoft. Como este artigo foi traduzido automaticamente, é possível que contenha erros de vocabulário, sintaxe ou gramática.

Expanda suas habilidades
Explore o treinamento
Obtenha novos recursos primeiro
Ingressar no Office Insider

Essas informações foram úteis?

Obrigado por seus comentários!

Agradecemos pelos seus comentários! Parece que pode ser útil conectar você a um de nossos agentes de suporte do Office.

×