MaximoAccess

Caro Usuário, não tire as suas duvidas nas Salas de Repositório, abra sempre um novo tópico relacionado, nas salas destinadas para o efeito, como Sala de Tabelas, Consultas, Formulários, Relatórios, Macros, Módulos e VBA.

Obrigado

Administração do MaximoAccess

Dicas Ms Access, Exemplos Ms Access, Codigos VBA Ms Access, SQL Ms Access

    Filtrar consulta através de ListBox

    Compartilhe

    rcvphv
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 07/02/2012

    Filtrar consulta através de ListBox

    Mensagem  rcvphv em Ter 07 Jul 2015, 17:14

    Pessoal
    Boa tarde

    Tenho uma listbox e gostaria de selecionar vários dados dessa única listbox e com isso filtrar uma consulta?

    Já li, varias dicas, mas não consegui entender.

    Obrigado

    Rogerio

    rubenscouto
    Super Avançado
    Super Avançado

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 547
    Registrado : 02/10/2011

    Re: Filtrar consulta através de ListBox

    Mensagem  rubenscouto em Qua 08 Jul 2015, 10:56

    veja neste site sobre o assunto.
    [Você precisa estar registrado e conectado para ver este link.]

    emmanuelpereira2
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 18/07/2015

    Consulta com Cx de Listagem Multipla

    Mensagem  emmanuelpereira2 em Seg 20 Jul 2015, 22:27

    1-Crie uma Caixa de Listagem em seu formulário "não acoplada"

    Formato:
    Número de Colunas= (quantidade de colunas da sua cx de listagem
    Largura= Largura das colunas separadas por ponto e vírgula e em cm EX: 1cm;2,5cm
    Seleções múltiplas = Estendida

    Dados:
    Origem da Linha = Nome da sua tabela
    Tipo .... = Tabela/Consulta
    Coluna acoplada = Posição da Coluna que quer filtrar na consulta EX: 2

    Outra:
    Nome = Nome da Cx de Listagem

    2-Crie um botão "não acoplado"

    Outra:
    Nome=Nome do Botão

    Evento:
    Ao Clicar =  [Procedimento do Evento]

    Cole esta função e altere as variáveis:


    Private Sub NomedoBotão_Click()

      Dim Q As QueryDef, DB As Database
      Dim Criteria As String
      Dim ctl As Control
      Dim Itm As Variant

      'Criar uma lista de seleções
         Set ctl = Me![NomedaLista]

      For Each Itm In ctl.ItemsSelected
         If Len(Criteria) = 0 Then
            Criteria = Chr(34) & ctl.ItemData(Itm) & Chr(34)
         Else
            Criteria = Criteria & "," & Chr(34) & ctl.ItemData(Itm) _
             & Chr(34)
         End If
      Next Itm

      If Len(Criteria) = 0 Then
         Itm = MsgBox("Você deve selecionar um ou mais itens na" & _
           " Lista!", 0, "Nada foi selecionado")
         Exit Sub
      End If

      ' Modifica a consulta
         Set DB = CurrentDb()
      ' Coloque o nome da sua consulta
      Set Q = DB.QueryDefs("MinhaConsulta")
     
      Q.SQL = "Select * From Minhatabela Where [CampodaTabela] In(" & Criteria & _
        ");"
      Q.Close

      ' Run the form.
      DoCmd.OpenQuery "MinhaConsulta"
     

    End Sub

    rcvphv
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 07/02/2012

    Ajuda

    Mensagem  rcvphv em Seg 20 Jul 2015, 23:27

    Emmanuel

    Obrigado pela ajuda.

    Fiz conforme o seu post, porém quando aberto o botão aparece a mensagem abaixo:
    Erro de Compilação
    O tipo definido pelo usuário não foi definido.


    Dim Q As Querydef

    Sabe o que é isso?

    emmanuelpereira2
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2
    Registrado : 18/07/2015

    Re: Filtrar consulta através de ListBox

    Mensagem  emmanuelpereira2 em Ter 21 Jul 2015, 01:44

    Não mude esta linha.

    Dim Q As QueryDef, DB As Database

    Verifique se o nome da consulta esta correta

    Set Q = DB.QueryDefs("MinhaConsulta")


    DoCmd.OpenQuery "MinhaConsulta"

    rcvphv
    Novato
    Novato

    Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 9
    Registrado : 07/02/2012

    Re: Filtrar consulta através de ListBox

    Mensagem  rcvphv em Ter 21 Jul 2015, 16:04

    Emmanuel

    Muito obrigado pela a sua ajuda!

    Deu certo agora!!!!!

      Data/hora atual: Sab 03 Dez 2016, 19:38