... Assinatura do site por 3 anos + Kit MontaRibbons + 3 Livros em PDF + Diversas Revistas (pdf) de brinde, por apenas R$182,00
(
podendo parcelar em até 10 vezes no cartão de crédito)...

Clique aqui e obtenha mais detalhes do nosso kit completo e de como comprar.


Datas em colunas - Lista de Chamada

Usuário Eduardo:

Bom dia.

Tenho uma tabela (aluno_presenca) com três campos:

Id_presenca (Numeração automática),
Id_Aluno (Número),
DataAula (Data/Hora)

O campo id_aluno, contém a matricula.

Na consulta, preciso que apareça as datas em colunas diferentes, (Col1, Col2, Col3, ...).  É uma lista de chamada, usada para verificar a data de presença de cada aluno.

Suporte:

Eduardo, para isso você tem que criar uma consulta de Referência Cruzada. O Microsoft Access possui um assistente que te conduz na montagem deste tipo de consulta. Veja neste tópico um passo a passo para você ter uma idéia.

Usei o assistente para criar a consulta, mas tive que intervir na escrita SQL, para tentar chegar ao que imagino que está desejando.

A escrita ficou da seguinte forma:

TRANSFORM IIf(Count(qryTeste.Id_aluno)>0,ChrW$(10003),'') AS presença
SELECT qryTeste.Al_nome, Count(qryTeste.Id_aluno) AS Total
FROM qryTeste
WHERE (((qryTeste.[aluno_presenca].[DataAula]) Is Not Null))
GROUP BY qryTeste.Al_nome
PIVOT Format([DataAula],"Short Date");

Veja o resultado na imagem:

Lista de chamada


 

 

Usuário Eduardo:

Avelino, com certeza é isso mesmo.

Obrigado pelo exemplo oferecido.

Download

 


 

 


5 comentário(s)

Jacir   15/03/2018 12:07:24

Dúvida: com base nesse exemplo. Se eu apresentar os dados da consulta em um formulário, será construído o formulário com base na consulta apresentada no momento da geração do formulário.
Se eu lançar um outro dia de presença, no formulário não será alterado. Ficará o antigo.
Existe uma forma de transformar dinâmica a apresentação das datas no formulário, ou seja, conforme vou acrescentando datas, vai reformulando os dados apresentados no formulário?
Obrigado,

Avelino Sampaio   19/03/2018 01:04:12

Jacir,

salve os dados que deseja atualizar, direto na tabela, origem da consulta de Referência Cruzada, e atualize o formulário usando o método REQUERY. Requery irá forçar a atualização da consulta, origem do formulário.

me.Requery

Jacir   19/03/2018 04:59:09

Oi Avelino, vamos imaginar produtos vendidos por período, imaginando que os produtos estejam nas colunas. Em alguns momentos eu posso ter tenho 3 produtos, outros 10, 11. O problema é que depois que for gerado o formulário com 3 produtos, numa próxima vez que eu for gerar, não aparecerá os 10, continuará apresentando os 3, uma vez que o formulário já foi gerado.

Avelino Sampaio   19/03/2018 05:10:43

Jacir,

veja este tópico do meu fórum se atende (copie e cole o endereço abaixo no seu navegador):

http://www.redeaccess.com.br/viewtopic.php?f=4&t=1085&p=4958&hilit=refer%C3%AAncia+cruzada#p4958

Sucesso!

Jacir   19/03/2018 07:52:35

Pefeito. Muito Obrigado, Avelino.


Envie seu comentário: