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


3 participantes

    [Resolvido]Filtrar caixa de listagem com grupo de opções

    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 20/5/2013, 19:21

    Olá boa tarde,
    mais uma vez necessito da vossa ajuda se possível.
    Tenho um formulário com um grupo de opções e uma caixa de listagem, gostaria de filtrar essa caixa de listagem através desse grupo de opções, estou a utilizar o seguinte código. está a fazer a faz a contagem dos registos numa caixa de texto, mas não estou a conseguir filtrar a caixa d listagem quando faz a contagem dos registo selecionados no grupo de opções. Obrigado

    Private Sub Quadro1_AfterUpdate()
    If Me.Quadro1.Value = 1 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Aberto" & "'")
    Me.txtFiltro.Value = "Aberto"
    ElseIf Me.Quadro1.Value = 2 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Anulado" & "'")
    Me.txtFiltro.Value = "Anulado"
    ElseIf Me.Quadro1.Value = 3 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Executado" & "'")
    Me.txtFiltro.Value = "Executado"
    ElseIf Me.Quadro1.Value = 4 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Suspenso" & "'")
    Me.txtFiltro.Value = "Suspenso"
    Else
    Me.txtFiltro.Value = ""

    End If


    End Sub
    avatar
    Convidado
    Convidado


    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Convidado 21/5/2013, 23:43

    Envie-nos um modelo do bd para que possamos ver isso pra ti.

    Cumprimentos.
    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 22/5/2013, 12:47

    Obrigado pela atenção, junto envio bd teste
    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 23/5/2013, 12:53

    Haverá ou não solução para esta situação?
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 8449
    Registrado : 05/11/2009

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Alexandre Neves 23/5/2013, 18:22

    Boa tarde, matutano
    Private Sub Quadro1_AfterUpdate()
    If Me.Quadro1.Value = 1 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Aberto" & "'")
    Me.txtFiltro.Value = "Aberto"
    Lista0.RowSource = "SELECT IDservico, NOrdem, Format([DtPedido],'yyyy') AS Ano, Format([DtPedido],'mmmm') AS Mes, Usuario, TipEdificio, NEdoc, NProc, DespSuperior, DtPedido, Area, Freg, Obra, DtInicio, TrabExecutar, DtExecucao, Situação, PrevD, DTS([DtInicio],[DtExecucao]) AS DTrab, ([DiferenD]/[PrevD]) AS DesvioD, ([DTrab]-[PrevD]) AS DiferenD, MaoObra, Material, Transportes, ([MaoObra]+[Material]+[Transportes]) AS TotalObra FROM tbl_folha_Serviço WHERE Situação='Aberto';"
    ElseIf Me.Quadro1.Value = 2 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Anulado" & "'")
    Me.txtFiltro.Value = "Anulado"
    Lista0.RowSource = "SELECT IDservico, NOrdem, Format([DtPedido],'yyyy') AS Ano, Format([DtPedido],'mmmm') AS Mes, Usuario, TipEdificio, NEdoc, NProc, DespSuperior, DtPedido, Area, Freg, Obra, DtInicio, TrabExecutar, DtExecucao, Situação, PrevD, DTS([DtInicio],[DtExecucao]) AS DTrab, ([DiferenD]/[PrevD]) AS DesvioD, ([DTrab]-[PrevD]) AS DiferenD, MaoObra, Material, Transportes, ([MaoObra]+[Material]+[Transportes]) AS TotalObra FROM tbl_folha_Serviço WHERE Situação='Anulado';"
    ElseIf Me.Quadro1.Value = 3 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Executado" & "'")
    Me.txtFiltro.Value = "Executado"
    Lista0.RowSource = "SELECT IDservico, NOrdem, Format([DtPedido],'yyyy') AS Ano, Format([DtPedido],'mmmm') AS Mes, Usuario, TipEdificio, NEdoc, NProc, DespSuperior, DtPedido, Area, Freg, Obra, DtInicio, TrabExecutar, DtExecucao, Situação, PrevD, DTS([DtInicio],[DtExecucao]) AS DTrab, ([DiferenD]/[PrevD]) AS DesvioD, ([DTrab]-[PrevD]) AS DiferenD, MaoObra, Material, Transportes, ([MaoObra]+[Material]+[Transportes]) AS TotalObra FROM tbl_folha_Serviço WHERE Situação='Executado';"
    ElseIf Me.Quadro1.Value = 4 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "Situação='" & "Suspenso" & "'")
    Me.txtFiltro.Value = "Suspenso"
    Lista0.RowSource = "SELECT IDservico, NOrdem, Format([DtPedido],'yyyy') AS Ano, Format([DtPedido],'mmmm') AS Mes, Usuario, TipEdificio, NEdoc, NProc, DespSuperior, DtPedido, Area, Freg, Obra, DtInicio, TrabExecutar, DtExecucao, Situação, PrevD, DTS([DtInicio],[DtExecucao]) AS DTrab, ([DiferenD]/[PrevD]) AS DesvioD, ([DTrab]-[PrevD]) AS DiferenD, MaoObra, Material, Transportes, ([MaoObra]+[Material]+[Transportes]) AS TotalObra FROM tbl_folha_Serviço WHERE Situação='Suspenso';"
    Else
    Me.txtFiltro.Value = ""
    End If
    Forms!Frm_Folha_Serviço.Form!txtFiltro.Requery
    End Sub


    .................................................................................
    Access 2010. Mande bd que dê para testar (indique a versão). Não peça para fazer o que já tem feito. Dê todos os detalhes.
    Não coloquem entraves como senhas, esconder controlos, etc. Disponibilizem o mais limpo possível
    Só respondo a mensagens privadas, se forem de assunto privado; às outras não respondo.
    Quem trabalha e mata a fome não come o pão de ninguém; mas quem não trabalha e come, come sempre o pão de alguém. António Aleixo
    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 23/5/2013, 23:38

    Não sei como agradecer Alexandre, muito obrigado está a funcionar ***** Não quero ser abusador mas despois de selecionar uma das quatro opções, como é que posso voltar a ter a listagem toda outra vez? sem ter que fechar o formulário.

    Obrigado
    avatar
    Convidado
    Convidado


    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Convidado 24/5/2013, 00:15

    Grande Alexandre.... Obrigado por ajudar.. estive ocupado resolvedo coisa do meu tratamento.. e não tive tempo de acompanha..

    Valeu Amigão..
    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 24/5/2013, 12:23

    muito obrigado, agradeço ao Alexandre pela sua boa vontade de ensinar os que menos sabem.
    Ao Piloto o meu Agradecimento pelo seu interesse em me ajudar.
    MUITO OBRIGADO E TUDO DE BOM PARA VOCÊS.
    Resolvido com o acrescimo desta linha no código, para voltar a ter a listagem toda de volta

    ElseIf Me.Quadro1.Value = 5 Then
    Me.txtcontar = DCount("*", "tbl_folha_serviço", "NOrdem")
    Me.txtFiltro.Value = "Todos"
    Lista0.RowSource = "SELECT IDservico,Format([DtPedido],'yyyy') AS Ano, Format([DtPedido],'mmmm') AS Mes, NOrdem, NEdoc, NProc, DespSuperior, DtPedido, Area, Freg, Obra, DtInicio, TrabExecutar, DtExecucao, Situação, PrevD, DTS([DtInicio],[DtExecucao]) AS DTrab, ([DiferenD]/[PrevD]) AS DesvioD, ([DTrab]-[PrevD]) AS DiferenD, MaoObra, Material, Transportes, ([MaoObra]+[Material]+[Transportes]) AS TotalObra FROM tbl_folha_Serviço';"
    avatar
    Convidado
    Convidado


    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Convidado 24/5/2013, 13:57

    O Fórum agradece o Retorno.
    Avelino Sampaio
    Avelino Sampaio
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 3880
    Registrado : 04/04/2010

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Avelino Sampaio 24/5/2013, 14:23

    Olá!

    Sugiro um código mais enxuto para este seu caso:

    Código:
    Private Sub Quadro1_AfterUpdate()
    Dim strSql As String
    Select Case Me.Quadro1.Value
        Case 1: Me.txtFiltro.Value = "Aberto"
        Case 2: Me.txtFiltro.Value = "Anulado"
        Case 3: Me.txtFiltro.Value = "Executado"
        Case 4: Me.txtFiltro.Value = "Suspenso"
        Case 5: Me.txtFiltro.Value = "Todos"
    End Select
    strSql = "SELECT IDservico, Format([DtPedido],'yyyy') AS Ano, NOrdem, NEdoc, NProc, DespSuperior,DtPedido, "
    strSql = strSql & "Area, Freg, Obra, TrabExecutar, DtExecucao, TotalObra, Situação FROM qry_folha_serviço "
    strSql = strSql & "WHERE situação like '*" & IIf(Me!txtFiltro = "Todos", "", Me!txtFiltro) & "*' ORDER BY IDservico;"
    Me!Lista0.RowSource = strSql
    Me!txtcontar = Me!Lista0.ListCount - 1
    End Sub

    Bom estudo!


    .................................................................................
    Vídeos, livros, kit MontaRibbons e acesso vitalício ao site UsandoAcces  
    Clique AQUI e analise o custo beneficio do material oferecido.
    avatar
    matutano
    Avançado
    Avançado


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 358
    Registrado : 16/05/2011

    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  matutano 25/5/2013, 00:24

    Obrigado amigo Avelino, pela sua boa vontade de ajudar. Isto foi ótimo para quem não sabia 1 aprendeu 2
    bem haja

    Conteúdo patrocinado


    [Resolvido]Filtrar caixa de listagem com grupo de opções Empty Re: [Resolvido]Filtrar caixa de listagem com grupo de opções

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 29/4/2024, 06:42