este tutorial de acesso explica como criar um formulário de pesquisa com vários critérios.

você também pode querer ler:

Access DoCmd.Método abrirformulário para abrir o Formulário do Access

Acesso valor da Caixa de Combinação depende de outra Caixa de Combinação

o Retorno do Acesso de entrada de Formulário de Relatório do Access ou a Consulta ou Formulário

Acesso criar Formulário de pesquisa com vários critérios

às Vezes você precisa criar um Formulário de pesquisa onde os usuários podem selecionar critérios específicos. A solução mais simples é filtrar dados diretamente para cada campo, como usar o Autofiltro no Excel, mas isso não é nada elegante.

o Access fornece uma função de formulário chamada Filtro por formulário, que é muito fácil de usar.

Selecione uma Tabela/Consulta > Criar > Formulário > Aplicar Filtro/Classificar

access_search_form_11

Agora você pode selecionar vários critérios, você pode até mesmo selecionar um valor da lista suspensa de caixa. No entanto, esses valores de caixas suspensas são independentes uns dos outros.

você também pode usar ou critérios clicando na guia Or.

access_search_form_12

Quando a selecção é feita, clique em Alternar Filtro

access_search_form_13

Uma maneira melhor para fazer a filtragem é para escolha dos usuários dependentes de caixas suspensas.

por exemplo, na primeira caixa suspensa, os usuários escolhem o departamento A e, na segunda caixa suspensa, os usuários podem visualizar uma lista de pessoas do Departamento A.

este artigo mostrará como fazer essa filtragem.

crie um formulário de resultado

suponha que temos uma consulta como abaixo. Nosso objetivo é permitir que os usuários selecionem departamento para mostrar informações dos funcionários ou selecionar departamento + ID do funcionário.

vamos fazer um” formulário de resultado ” que mostra o resultado da pesquisa.

Consulta1
Departamento de IDENTIFICAÇÃO do Funcionário Data de Emprego Salário Subsídio de
Conta 1 1/1/2000 10000 100
Admin 2 1/1/2001 20000 200
Admin 3 1/1/2002 30000 300
Admin 4 1/1/2003 40000 400
Folha de pagamento 5 1/1/2004 50000 500
RH 6 1/1/2005 60000 600

Clique na Consulta e sob a guia Criar, selecione Mais de Formulários > Folha de dados

access_search_form

Agora salve o Formulário como result_frm. Caso você altere acidentalmente os dados do resultado, altere a propriedade bloqueada de cada caixa de texto para Sim

access_search_form_04

neste exemplo, quero retornar todos os campos de Query1 em forma de resultado. Eu escolho folha de dados porque cada registro pode ser exibido em uma linha com barra de rolagem horizontal. Não prefiro usar Formulário contínuo ou Formulário Único porque cada registro é exibido em várias linhas.

Criar um Formulário de Pesquisa

Crie um Formulário em branco e, em seguida, adicione duas Caixas de Combinação (Combo_Dept, Combo_EmpID) e um botão (search_btn), conforme mostrado abaixo.

access_search_form_05

1) Clique em Combo_Dept, na propriedade Origem Da Linha, digite

SELECT DISTINCT Department FROM Query1;

Fonte Da Linha é o que você pode selecionar na ComboBox.

2) Clique em Combo_EmpID, na propriedade de Origem da Linha, tipo de

SELECT FROM Query1 WHERE =!!;

3) Selecione Combo_Dept, seleccione Evento Após Atualizar e construir o Procedimento abaixo

Private Sub Combo_Dept_AfterUpdate() Me.Combo_EmpID = Null Me.Combo_EmpID.RequeryEnd Sub

Como você selecione um Departamento, Combo_EmpID é repor Nulo e, em seguida, execute novamente a consulta

4) Clique direito sobre search_btn e, em seguida, escolha Criar Eventos

Private Sub search_btn_Click() If IsNull(Me.Combo_EmpID) Then searchCriteria = "='" & Me.Combo_Dept & "'" searchSQL = "Select * FROM Query1 where " & searchCriteria Else searchCriteria = "='" & Me.Combo_Dept & "' AND =" & Me.Combo_EmpID searchSQL = "Select * FROM Query1 where " & searchCriteria End If DoCmd.OpenForm "result_frm", 3, searchSQLEnd Sub

Agora que você criou com êxito um simples Formulário de pesquisa. Depois de selecionar critérios no formulário de pesquisa, depois de clicar no botão Pesquisar, o formulário de resultado aparecerá e exibirá o resultado.

Deixe uma resposta

O seu endereço de email não será publicado.