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

    Filtragem combinada de duas combo box

    avatar
    llsmigoll
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 15/04/2013

    Filtragem combinada de duas combo box Empty Filtragem combinada de duas combo box

    Mensagem  llsmigoll 31/10/2013, 17:00

    Boa tarde,

    Venho novamente tirar dúvidas relacionadas a filtragem no fórum, desta vez não consigo fazer com que as filtragens se combinem, ou seja, se eu ativar um filtro por combo box, e após, ativar a outra combo, ele não combina. É como se ao ativar uma combo o filtro anterior se desfizesse.

    O código que eu uso, é uma adaptação da função de filtragem para formulário contínuo do Maestro.

    Código:

    Public Function fncFiltrar(NomeCampoFoco As String)
    Dim x As String, filtro As String, strSplit As String
    Dim f(7) As String, cp(7) As Variant
    Dim K As Variant, p As Byte
    Dim booFiltro As Boolean, booPos As Boolean

    x = Me(NomeCampoFoco).Text
    p = 0

    For p = 0 To 6
        cp(p) = IIf(InStr(NomeCampoFoco, "tx" & p + 1) > 0, x, Me("tx" & p + 1))
    Next

    Str (Fun_Matricula)
    cp(5) = Tx6.Column(0)
    cp(6) = Tx7.Column(0)


    f(0) = IIf(cp(0) = Chr(32), "Fun_Matricula is null", "Fun_Matricula Like '*" & cp(0) & "*'")
    f(1) = IIf(cp(1) = Chr(32), "Fun_Nome is null", "Fun_Nome Like '*" & cp(1) & "*'")
    f(2) = IIf(cp(2) = Chr(32), "Car_Nome is null", "Car_Nome Like '*" & cp(2) & "*'")
    f(3) = IIf(cp(3) = Chr(32), "Cdc_Nome is null", "Cdc_Nome Like '*" & cp(3) & "*'")
    f(4) = IIf(cp(4) = Chr(32), "Lid_Nome is null", "Lid_Nome Like '*" & cp(4) & "*'")
    f(5) = IIf(cp(5) = Chr(32), "Lia_Codigo is null", "Lia_Codigo Like '*" & cp(5) & "*'")
    f(6) = IIf(cp(6) = Chr(32), "Lva_Codigo is null", "Lva_Codigo Like '*" & cp(6) & "*'")


    strSplit = Len(cp(0) & "") & "|" & Len(cp(1) & "") & "|" & Len(cp(2) & "") & "|" & Len(cp(3) & "") & "|" & Len(cp(4) & "") & "|" & Len(cp(5) & "") & "|" & Len(cp(6) & "")
    K = Split(strSplit, "|")

    filtro = ""
    p = 0
    For p = 0 To UBound(K)
        If Val(K(p)) > 0 Then
            If booPos = False Then
                filtro = f(p): booPos = True
            Else
                filtro = filtro & " AND " & f(p)
            End If
            booFiltro = True
        End If
    Next p

    Me.Filter = filtro
    Me.FilterOn = booFiltro
    Me(NomeCampoFoco) = x
    If booFiltro Then
        Me(NomeCampoFoco).SelStart = Len(x & "")
    Else
        Me(NomeCampoFoco).SetFocus
    End If
    End Function

    o Nome do formulário é "ConsultaTeste".
    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    Filtragem combinada de duas combo box Empty Re: Filtragem combinada de duas combo box

    Mensagem  Silvio 31/10/2013, 17:07

    Boas...

    Pegue o exemplo da segunda mensagem...neste post e adapte-o as necessidades.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."
    avatar
    llsmigoll
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 20
    Registrado : 15/04/2013

    Filtragem combinada de duas combo box Empty Re: Filtragem combinada de duas combo box

    Mensagem  llsmigoll 31/10/2013, 17:59

    Silvo boa tarde,

    Exemplo bem simples, creio que precisarei para o meu BD também, mas....

    Não era bem isso que eu estava precisando, a minha combo box serve para filtrar dados de uma consulta,

    O que eu preciso é:

    Duas Combos que combinem seus filtros,

    Eu postei o BANCO, a consulta que tem as duas Combos se chama ConsultaTeste.

    Se puder, de uma olhada por favor.

    Silvio
    Silvio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 5074
    Registrado : 20/04/2011

    Filtragem combinada de duas combo box Empty Re: Filtragem combinada de duas combo box

    Mensagem  Silvio 4/11/2013, 15:51

    Boa tarde Bruno,

    De uma olhada nesse link, aqui do nosso fórum. Na mensagem de número 10 tem um arquivo, abaixe-o, nele tem 2 combos filtradas.


    .................................................................................
    Caso tenha resolvido a tua duvida, coloque o tópico como resolvido.
    www.maximoaccess.com/t860-resolucao-de-topicos

    "Quase tudo é possível quando se tem determinação e força de vontade. Não desista tão rápido."

    Conteúdo patrocinado


    Filtragem combinada de duas combo box Empty Re: Filtragem combinada de duas combo box

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/3/2024, 08:24