troppo bello per essere vero...
un altro sistema che però su access devi sempre testare (chiamare access db è un eufemismo ) è questo


SELECT campo1, count(*) AS campo2, DataOra
FROM nomeTabella
GROUP BY campo1, cast(floor(cast (DataOra as unsigned)/1000000) as date)
così trasformi data in intero, lo divide per 10^6 (mandi dopo la , le cifre dell'ora hh:mm:zz ) floor arrotonda all'intero inferiore (la data) e l'ultimo cast ti ritorna il dato in una data....in mysql funziona, in access prova...eventuali problemi potresti averli su signed(magari access chiama gli interi integer) e su floor (forse qualcosa come trunc, truncate, insomma trova un metodo per recuperare da un numero decimale la sua parte intera)
ciao ciao