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

    Problema com a Soma em formulário

    avatar
    M2013
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 64
    Registrado : 07/06/2013

    Problema com a Soma em formulário Empty Problema com a Soma em formulário

    Mensagem  M2013 8/7/2013, 17:55

    Tenho 1 tabela

    Cod  sub_cod  Status   Jan Fev Mar Abr Mai Jun  Jul  Ago  Set Out Nov   Dez
    01    2302983  previsto   0   0     0    0    0   10   10   10   0     0    0  0   0
    01    3444555  previsto   0   0     0    0    0   10   10   10   0     0    0  0   0
    02    1122121  previsto   0   0     0    0    0   10   20   10   0     0    0  0   0
    02    2345444  previsto   0   0     0    0    0   10   20   10   0     0    0  0   0


    Em um campo  ([Ativo])  de meu  Formulário frm_Ac_Ed  tenho um campo desvinculado totalizador que uso um Dsum, onde pretendo somar o valor dos meses Janeiro,Fevereiro.... até dezembro de acordo com o critério número do código.Seguindo os dados acima seria o seguinte:
    Quando o form estiver mostrando cod=01 e sub_cod=2302983  nesse campo vou mostrar 60, ao mostrar cod=02 e sub_cod=1122121
    vou mostrar 80, isto é sempre o somtório de código.
    Coloquei o DSUM no evento "atual" do Form (não sei se seria o mais correto);

    Como carrego o form através da seleção de um nome de outro form ![frm_Diário],carrego o form pela variável sc

    Dim sc
    sc = Forms![frm_Diário].Lst_A

    me.Ativo = DSum(" [Jan]+[Fev]+[Mar]+[Abr]+[Mai]+[Jun]+[Jul]+[Ago]+[Set]+[Out]+[Nov]+[Dez]", sc, "Cod='" & Forms![frm_Ac_Ed]![Cod] & "'")

    o código acima não está mostrando a soma.... No caso de mostrar sempre o valor nesse campo calculado (seria em tempo real?), quando por exemplo alterasse o valor de um mes na tela , usaria o comando requery??

    agradeço antecipado a atenção
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    Problema com a Soma em formulário Empty Re: Problema com a Soma em formulário

    Mensagem  Alexandre Neves 8/7/2013, 19:03

    Boa tarde, M2013, e bem-vindo ao fórum
    Pode utilizar um recordset para fazer os cálculos mais rápido
    Porque a soma dá 60 e 80? não percebi, não vejo nenhum sub_cod que tenha essas somas


    .................................................................................
    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
    M2013
    Intermediário
    Intermediário


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Anónimo
    Mensagens : 64
    Registrado : 07/06/2013

    Problema com a Soma em formulário Empty Re: Problema com a Soma em formulário

    Mensagem  M2013 8/7/2013, 19:55

    Obrigado pela resposta.

    Sim são os valores totais por código.Consegui resolver em parte fazendo a conta por fora:


    Private Sub SomandoCod()
    sc = Forms![frm_Diário].Lst_A
    CurrentDb.Execute "UPDATE [" & sc & "] SET [" & sc & "].Ativo = [Jan]+[Fev]+[Mar]+[Abr]+[Mai]+[Jun]+[Jul]+[Ago]+[Set]+[Out]+[Nov]+[Dez] WHERE ((([" & sc & "].Status)=1));"
    End Sub

    O Valor é exibido corretamente em ([Ativo]) , porém se entro no registro e altero o valor , somente quando mudo de registro é que ele atualiza o campo.
    Há como atualizar o me.[Ativo] sempre que houver alterações de valor?

    no atual ficou

    Private Sub Form_Current()
    call SomandoCod
    me.[Ativo] = DSum("[[Ativo]]", sc, "Cod='" Forms![frm_Ac_Ed]![Cod] & "'")
    End Sub
    Alexandre Neves
    Alexandre Neves
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

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

    Problema com a Soma em formulário Empty Re: Problema com a Soma em formulário

    Mensagem  Alexandre Neves 8/7/2013, 22:03

    Nos controlos que podem ser actualizados, coloque código para refazer o cálculo


    .................................................................................
    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

    Conteúdo patrocinado


    Problema com a Soma em formulário Empty Re: Problema com a Soma em formulário

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 23/11/2024, 17:44