Non, tu peux créer des champs calculés implicitement dans tes requetes à l'aide de formules de calcul et d'un alias de champ (nom du champ) :
SELECT A.champ1, A.champ2, CInt(Format$(...) As ChampCalcul FROM A...
Si tu ouvres un recordset sur cette requete, tu auras un champ nommé ChampCalcul directement exploitable.
edit: il faut que ton group by porte sur la date et l'heure (modifiée) pour garder un tri correct, à moins que tu ne veuilles regrouper les « 8h15 » de n'importe quel jour écoulé.