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
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.
Quando a selecção é feita, clique em Alternar Filtro
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.
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
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
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.
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.