Ir ao conteúdo
  • Cadastre-se
Dhieg

RESOLVIDO No Access 2013 como contar e somar registos de uma tabela e mostrar num formulário?

Recommended Posts

No Access 2013 tenho uma tabela de para registar as presenças numa reunião de condomínio.

 

Nome da tabela: tbEntidades

 

Campos:

tbEntId    tbPresente (tipo sim/não)            tbVotos

1                 sim                                          5

2                 não                                         3

3                 sim                                          4

4                 não                                         6

 

Quero colocar num form

 

1. CONTAR - um controlo que conte quantos estão presentes (=sim)

                Ex: Presenças 2

 

2. SOMAR -  um controlo que some os votos dos presentes

                  Ex: Votos 9

 

Alguém pode ajudar? Obrigado.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olá,

 

tenha certeza de que o campo tbEntId seja INT tamanho 11 auto incrementado,  tbPresentes seja um varchar de 3 caracteres e tbVotos seja INT tamanho 11

Fazer a consulta bem simples. use a função count() para contar o número de presentes e use a função sum() para somar o número de votos para obter o valor total, agrupados pelo campo tbPresente.

 

Referências para você estudar e tentar implementar a consulta:

http://www.w3schools.com/sql/sql_groupby.asp

http://www.w3schools.com/sql/sql_func_count.asp

http://www.w3schools.com/sql/sql_func_sum.asp

http://stackoverflow.com/questions/12927268/sum-of-grouped-count-in-sql-query

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Obrigado. Percebo o código mas tenho dificuldade em implementar. Onde colocar e como?

 

Já tenho uma consulta que conta corretamente os registos.

 

Aqui está com os nomes reais usados na BD em vista SQL:

 

SELECT Count(tbEntidades.tbAssPresente) AS ContaPresentes, tbEntidades.tbAssPresenteFROM tbEntidadesGROUP BY tbEntidades.tbAssPresenteHAVING (((Count(tbEntidades.tbAssPresente))=True) AND ((tbEntidades.tbAssPresente)=True));
... e a funcionar corretamente.
 
Mas como colocar o resultado nesta caixa "Count"?
 
2015-01-12_09h07_42_zpse1e217cb.png

Compartilhar este post


Link para o post
Compartilhar em outros sites
Ok, obrigado.

 

Consegui resolver com uma list box, com o Construtor de código na Origem da linha, montei uma consulta e o resultado foi

 

Para o primeiro campo que deveria mostrar a Contagem:

 



SELECT Count(tbEntidades.tbAssPresente) AS ContaPresentes, tbEntidades.tbAssPresente
FROM tbEntidades
GROUP BY tbEntidades.tbAssPresente
HAVING (((Count(tbEntidades.tbAssPresente))=True) AND ((tbEntidades.tbAssPresente)=True));


 

Para o segundo campo que deveria mostrar a Soma:

 



SELECT Sum(tbFrações.tbFrPerc) AS SomaDetbFrPerc, tbEntidades.tbAssPresente FROM tbFrações INNER JOIN tbEntidades ON tbFrações.tbFrId = tbEntidades.tbFrações.Value GROUP BY tbEntidades.tbAssPresente HAVING (((tbEntidades.tbAssPresente)=True)); 


 

Obrigado pela ajuda Dif.

  • Curtir 1

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora





Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas publicações sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×