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]Somar no formulário com condição sem usar o DSoma. Tem como?

    avatar
    panunto
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/10/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  panunto 29/10/2010, 12:16

    Olá, Mestres!
    Sou novo por aqui e novo também nesse mundo da programação.
    Na verdade só é um hobbie, pelo menos por enquanto.

    Estou ajudando minha esposa com um controle das revendas dela e preciso muito da ajuda de vocês.

    Tenho um formulário(Pedidos) de pedidos com um subformulário(ProdutosPedido) no qual constam os produtos daquele pedido em cadastro no formulário principal.
    No rodapé do subformulário criei uma caixa de texto não acoplada para fazer a soma, mas ainda não resolveu meu problema.

    Meu Banco de Dados

    Cada produto tem uma pontução por venda, mas alguns não tem pontos. Preciso que a soma do campo seja feita apenas quando o produto adicionado tiver uma pontução. Se o produto adicionado não tiver pontuação deve ser somado em outro campo.

    Acontece que usando o DSoma a operação acontece na tabela (ProdutosPedido), e nela estão todos os produtos de cada pedido já cadastrado. Por isso, o DSoma faz a operação com os produtos que tem pontução, mas de todos os pedidos, e não quero isso. Quero que some apenas os produtos compontuação cadastrados no pedido que está no formulário.

    Existe uma forma de condicionar a soma no próprio formulário, ou então via código vba? Estou quebrando a cabeça aqui e não consegui achar um jeito.
    Deve ter uma solução fácil, mas como ainda sei muito pouco de programação não sei o que fazer.

    Conto com a experiência de vocês!

    Grande Abraço a todos!
    criquio
    criquio
    Moderador Global
    Moderador Global


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 11229
    Registrado : 30/12/2009

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  criquio 29/10/2010, 12:32

    Olá Marcelo! Seja bem vindo ao forum. Já que está começando agora com o maravilhoso e encantado mundo Access, vou lhe dar uma sugestão que talvez resolva essa e outras dúvidas que vier a ter. Abra o form em modo de código vba e digite

    Me.NomeCampoDaSoma = DSoma(...

    Na hora que abrir o parêntese, deverá aparecer uma dica de exemplo das seções a serem usadas. A última se refere à condição. Qualquer dúvida à essa altura, você pode posicionar o cursor em cima de DCount e pressionar a tecla F1 que terá valiosas dicas. Isso vale para todos os eventos do Access, que é recheado de dicas na ajuda.

    Se ainda restar dúvidas, diga que tentaremos auxiliar.


    .................................................................................
    Meu novo site: www.vcssistemas.com.br

    Clique aqui e veja um vídeo que explica como fazer pesquisas no forum.


    DICA: Quando precisar inserir um exemplo do seu aplicativo, siga os procedimentos abaixo:
    1 - faça uma cópia do aplicativo
    2 - retire tudo que não for necessário à solução do problema, exceto o que o aplicativo precisar para funcionar
    3 - use o Compactar/Reparar
    4 - compacte o aplicativo em zip ou rar (zip para postagem como anexo na mensagem)


    Agradeça a quem lhe ajudou, clicando no joinha de uma das mensagens do usuário.
    Positive as mensagens que achar útil, no canto superior direito delas.

    avatar
    panunto
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/10/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  panunto 29/10/2010, 13:09

    Obrigado pela rápida resposta, Criquio.

    Mas ficou ainda dúvida... Usando o DSum não sou obrigado a informar como domínio uma tabela ou consulta? Se sim, no meu caso não funciona porque preciso utilizar como domínio o formulário.
    E usando na fonte de registro a fórmula "=Soma([NomeDoCampo])" não tenho a possibilidade condicionar a soma.

    Mais uma vez obrigado.

    Abraço
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  vieirasoft 29/10/2010, 13:26

    OLá

    No rodapé do seu formulário coloque uma caixa de texto para obter a soma. No formulário principal inserir outra caixa e digite o seguinte na origem dos dados:

    =[nome do subformulário].Formulário!caixa de texto que reside no sub form para obter a soma
    avatar
    panunto
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/10/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  panunto 30/10/2010, 11:30

    Obrigado pelas dicas!
    Ajudou bastante. Resolvi o meu problema fazendo o seguinte.
    Assim que insiro a quantidade do produto no subformulário ele faz a seguinte soma:

    Me.Parent!txtTotalSeção1.Value = Nz(DSum("[Valor Total]", "ProdutosPedido", "[IDPedido] = IDPedido.Value AND [Pontos] > 0"), 0)

    Não sei se é o mais correto o que fiz, mas para o que eu precisava resolveu...rs

    Mais uma vez obrigado pelas rápidas respostas!
    E já vou abrir um novo post com outra dúvida... hehehe

    Abraço!
    avatar
    panunto
    Novato
    Novato


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Brasil
    Mensagens : 4
    Registrado : 28/10/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  panunto 30/10/2010, 11:32

    Resolvido
    vieirasoft
    vieirasoft
    Developer
    Developer


    Respeito às regras : Respeito às Regras 100%

    Sexo : Masculino
    Localização : Portugal
    Mensagens : 7304
    Registrado : 11/05/2010

    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  vieirasoft 30/10/2010, 11:33

    Valeu amigo, estamos aqui para ajudar mesmo e obrigado pelo retorno.

    Conteúdo patrocinado


    [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como? Empty Re: [Resolvido]Somar no formulário com condição sem usar o DSoma. Tem como?

    Mensagem  Conteúdo patrocinado


      Data/hora atual: 8/11/2024, 01:15