MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração


Participe do fórum, é rápido e fácil

MaximoAccess

Caro Usuário, antes de postar pela primeira vez, leia as regras do fórum.

https://www.maximoaccess.com/t48-regras-do-forum

Obrigado

Administração

MaximoAccess

Gostaria de reagir a esta mensagem? Crie uma conta em poucos cliques ou inicie sessão para continuar.

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


2 participantes

    [Resolvido]Adaptar Código Filtrar ao Digitar

    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Adaptar Código Filtrar ao Digitar Empty [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Celso Roberto 13/6/2016, 20:48

    Boa Tarde a todos..

    Uso o código abaixo para filtrar ao digitar na combo, Ele filtra conforme eu preciso.
    O que preciso é ao abrir a combo eu consiga selecionar oque foi filtrado com as setas para cima ou para baixo, ele só permite com o mouse.
    Como sempre conto com a ajuda dos Amigos  

    Dim strText, strFind, strFind2

    ' strText-Retorna o valor da Combo
    ' strFind-Retorna o valor do conjunto já digitado
    ' strFind2-Junta a clausula WHERE ao valor do conjunto já digitado

    strText = Me.ComboCliente.Text

    If Len(Trim(strText)) > 0 Then
    ' Mostra a lista com os registro que contenham o conjunto já digitado
    ' Cria uma expressão de consulta SQL com string para clausula WHERE do SQL que retorna os dados da tabela
    strFind2 = "txtNomeCliente Like '*"
    For I = 1 To Len(Trim(strText))
    If (Right(strFind, 1) = "*") Then
    strFind = Left(strFind, Len(strFind) - 1)
    End If
    strFind = strFind & Mid(strText, I, 1) & "*"
    Next
    strFind2 = strFind2 & strFind & "'"

    strsql = "SELECT CodCliente, txtNomeCliente FROM tblClientes where " & strFind2 & " ORDER BY txtNomeCliente;"

    ' Filter os registros da combo list utilizando a nova consulta sql
    Me.ComboCliente.RowSource = strsql

    Else
    ' Senão, mostra a lista com todos os registros
    strsql = "SELECT CodCliente, txtNomeCliente FROM tblClientes ORDER BY txtNomeCliente; "
    Me.ComboCliente.RowSource = strsql
    End If
    ' Abre a lista do combobox para mostrar os registros filtrados
    Me.ComboCliente.Dropdown
           
    End Sub



    Abraços
    Anexos
    [Resolvido]Adaptar Código Filtrar ao Digitar AttachmentCaixaDeCombinação.zip
    Você não tem permissão para fazer download dos arquivos anexados.
    (66 Kb) Baixado 24 vez(es)


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Adaptar Código Filtrar ao Digitar Empty Re: [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Celso Roberto 15/6/2016, 17:04

    "UP"

    Ainda não consegui...

    Também pode ser outro código, se alguém tiver..

    Aguardo


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    avatar
    Kaynan
    Maximo VIP
    Maximo VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 2980
    Registrado : 09/04/2012

    [Resolvido]Adaptar Código Filtrar ao Digitar Empty Re: [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Kaynan 15/6/2016, 17:34

    Seria assim.

    https://dl.dropboxusercontent.com/u/90217826/CaixaDeCombina%C3%A7%C3%A3o.rar
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Adaptar Código Filtrar ao Digitar Empty Re: [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Celso Roberto 15/6/2016, 19:36

    Olá Kaynan Td Bem..

    Obrigado por tentar me ajudar, mas não seria isto.
    Este resultado se consegue sem usar o código de filtrar ao digitar que estou uasando no evento ao alterar

    O que preciso é usando este código que filtra em qualquer parte do campo ao digitar, poder selecionar com as setas para cima e para baixo ao abrir a caixa e também após filtrado.
    Ele só permite com o mouse e os usuários estão reclamando que dificulta o trabalho

    Abraços e obrigado


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....
    Celso Roberto
    Celso Roberto
    VIP
    VIP


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 1076
    Registrado : 01/03/2014

    [Resolvido]Adaptar Código Filtrar ao Digitar Empty Re: [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Celso Roberto 17/6/2016, 18:18

    Olá,
    Deixo aqui o link onde encontrei a solução,pode ser interessante para quem utiliza a filtragem ao digitar e quer usar as teclas para cima e para baixo,como era o meu caso.


    http://www.lebans.com/List_Combo.htm#ArrowKeysListBox


    Ele pede para colocar o código no form, mas utilizei direto na caixa de combinação e ficou muito bom


    Código:
    Private Sub cboNomeCliente_KeyDown(KeyCode As Integer, Shift As Integer)
         
          Me.cboNomeCliente.Dropdown
        Select Case KeyCode
        Case vbKeyDown
          Me.cboNomeCliente = Me.cboNomeCliente.ItemData(Me.cboNomeCliente.ListIndex + 1)
          KeyCode = 0
        Case vbKeyUp
          Me.cboNomeCliente = Me.cboNomeCliente.ItemData(Me.cboNomeCliente.ListIndex - 1)
          KeyCode = 0
        Case Else
          DoCmd.SearchForRecord , "", acFirst, "[CodCliente] = " & Str(Nz(Screen.ActiveControl, 0))
          'Call cboNomeCliente_AfterUpdate
        End Select

    End Sub

    Abraços e obrigado a todos quetentaram me ajudar


    .................................................................................


    Você fica satisfeito ao ter sua dúvida solucionada?.
    Quem te ajuda também fica quando você da o tópico por "Resolvido".
    Veja como neste Link: https://www.maximoaccess.com/t860-resolucao-de-topicos



    A Única coisa que sei é que ainda nada sei, Mas em breve Saberei.....

    Conteúdo patrocinado


    [Resolvido]Adaptar Código Filtrar ao Digitar Empty Re: [Resolvido]Adaptar Código Filtrar ao Digitar

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 22/11/2024, 01:58