Ir ao conteúdo
  • Cadastre-se

Gersonl

Membro Júnior
  • Posts

    2
  • Cadastrado em

  • Última visita

posts postados por Gersonl

  1. Então galera eu consegui resolver, então vou postar aqui, caso alguém queira.

    Eu inicio o formulário com a Caixa de Texto, onde será digitada a pesquisa, bloqueada.
    A pessoa seleciona na Caixa de Combinação o campo que deseja. E nas propriedades da Caixa de Combinação, Evento, Ao alterar eu escrevo o seguinte código:
     

    Comb_Pesquisa.SetFocus
     
    If Comb_Pesquisa.Text = "Nome" Then
    Lista0.RowSource = "Consulta_Nome"
    Me.Comando8.Enabled = True
    Me.Txt_Pesquisa.Enabled = True
    Txt_Pesquisa.SetFocus
    ElseIf Comb_Pesquisa.Text = "Gerador" Then
    Lista0.RowSource = "Consulta_Gerador"
    Me.Comando8.Enabled = True
    Me.Txt_Pesquisa.Enabled = True
    Txt_Pesquisa.SetFocus
    ElseIf Comb_Pesquisa.Text = "Embalagem" Then
    Lista0.RowSource = "Consulta_Embalagem"
    Me.Comando8.Enabled = True
    Me.Txt_Pesquisa.Enabled = True
    Txt_Pesquisa.SetFocus
    End If

    Como podem ver eu fiz um "if" em que dependendo do que é selecionado (Nome, Gerador ou Embalagem) o código altera a Origem da Linha (RowSouce) da Caixa de listagem. Para isso eu criei 3 Consultas diferentes (Consulta_Nome, Consulta_Gerador, Consulta_Embalagem).

    Nas Consultas eu coloquei no modo SQL e montei um código que faria a pesquisa de acordo com o que eu digitasse na Caixa de Texto. Segue um dos códigos:

     

    SELECT TabU.id_TabU,

                     Embalagem.Tipo_Embalagem AS Embalagem,

                     TabU.Nome_TabU AS Nome,

                     Gerador.Nome_Gerador AS Gerador,

                     TipoTabU.Descricao_TipoTabU AS Tipo,

                     TabU.Tratamento_TabU AS Tratado,
                     TabU.Massa_TabU AS Massa,
                     TabU.Volume_TabU AS Volume,

                     TabU.Qtd_TabU AS Qtd

    FROM TipoTabU INNER JOIN (Gerador INNER JOIN (Embalagem INNER JOIN TabU ON Embalagem.id_Embalagem=TabU.Embalagem_TabU) ON Gerador.id_Gerador=TabU.Gerador_TabU) ON TipoTabU.id_TipoTabU=TabU.Tipo_TabU
    WHERE (((Embalagem.Tipo_Embalagem) Like [Formulários]![Frm_PesquisaTot]![Txt_Pesquisa] & "*"))
    ORDER BY Embalagem.Tipo_Embalagem;

    O diferencial do código está no "Where". Depois disso basta ir na Caixa de Texto do Formulário, Propriedades, Evento, Ao alterar e colocar o seguinte código:
     

    Me.Refresh
    SendKeys "{f2}"
     
    Que servem para atualizar instantaneamente a Caixa de Listagem e colocar o indicador na última letra da Caixa de Texto respectivamente.

    E é isso, qualquer dúvida podem perguntar.
  2. Bom dia galera, sou iniciante em Access 2007 e meu problema é o seguinte.

    Criei um formulário de pesquisa filtrada. Primeiramente eu seleciono em uma caixa de combinação o campo que vou pesquisar. Feito isso a caixa de texto é ativada e passo a digitar o que eu quero buscar. Porém preciso que ao selecionar o valor na caixa de combinação eu altere o critério de busca da caixa de listagem.

    Desse modo se eu selecionar Nome, ele vai lá na caixa de listagem / Origem da linha e coloca o código com os critérios da busca.
    Acredito que isso não seja difícil, porém ainda não sei fazer. Alguém pode me ajudar?

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

 

GRÁTIS: ebook Redes Wi-Fi – 2ª Edição

EBOOK GRÁTIS!

CLIQUE AQUI E BAIXE AGORA MESMO!