Newsgroup: it.comp.appl.access
Titolo: Query a campi incrociati senza aggregazione

Ciao.
È possibile fare una query a campi incrociati senza aggregazione? Ad esempio ho una tabella Assenze con data, ufficio, impiegato. Vorrei una query a campi incrociati con intestazione riga ufficio, con intestazione colonna data e con valore il nome. Ma il nome non va conteggiato, ma vorrei avere l'elenco dei nomi (tutti) che sono registrati per quella data in quell'ufficio.
Grazie

 È possibile fare una query a campi incrociati senza aggregazione? Ad esempio ho una tabella Assenze con data, ufficio, impiegato. Vorrei una query a campi incrociati con intestazione riga ufficio, con intestazione colonna data e con valore il nome. Ma il nome non va conteggiato, ma vorrei avere l'elenco dei nomi (tutti) che sono registrati per quella data in quell'ufficio.
 
provo un suggerimento di massima 
(come farei io, ma attendi interventi migliori ...)
 
Premesso che la query a campi incrociati deriva sempre da un'aggregazione
 
per lo scopo richiesto (una "cella" che deve contenere una lista di nomi ...)
procederei in due step:
 
1) una query con 3 campi, 2 RAGGRUPPATI ripresi dalla tabella (Ufficio e Data)
e il terzo "calcolato" (stringaUtenti)
--> funzione utente basata su un recordset che scorre le righe tabella
per ufficio e data "della riga query" e compone la stringa (lista impiegati)
 
2) una query a campi incrociati basata su quella precedente
righe (GRP): ufficio
colonne (GRP): data
valore (PRIMO): stringaUtenti
 
SE i dati sono molti può essere necessario "fermare" l'esito della query 1 in una tabella temporanea (origine della query a campi incrociati)
 
Penso proprio che sia migliorabile l'indicazione su come ottenere la stringaUtenti

Grazie mille....mi sembra una buona soluzione.
Secondo te esiste un modo poi a livello di report per avere poi i nomi concatenati messi uno a capo dell altro all interno del campo?

 Secondo te esiste un modo poi a livello di report per avere poi i nomi concatenati messi uno a capo dell altro all interno del campo?
 
allora:
per dare un ordine alfabetico alla stringa il recordset che scorre la tabella deve avere già, nella stringa di origine, la clausola Order by Impiegato.
Poiché componi la stringa come meglio occorre, puoi mettere come separatore dei nomi il carattere di nuova riga (vbcrlf) invece dello spazio.
Il controllo (textbox ?) del report deve essere espandibile e quindi con le proprietà Espandi e Riduci settate a Sì, E questo settaggio deve essere impostato in modo uguale anche nella sezione (corpo ?) che contiene il controllo

Provo. Grazie mille

 Provo. Grazie mille
 
sono andato a rivedere una mia situazione simile in Access 2000
in cui "ottengo il ritorno a capo in un campo testo"
 
nella tabella occorre che il "campo testo" sia di tipo Memo 
(testo lungo nelle versioni più recenti)
 
e la combinazione di caratteri 
che determina il ritorno a capo è CHR$(13) & CHR$(10)
non so se è sufficiente CHR$(13) che equivale a vbCrlf
 
Quindi, in definitiva, la cosa si ottiene in un report
ma occorre verificare l'impatto dei caratteri di "nuova riga" 
nella composizione stringaUtenti
e utilizzare un campo memo (testo lungo)
vedi esempio
https://drive.google.com/open?id=1olT84tqtsimC4KoMQXifJ_asfDuwxSiV