I tuoi errori sono grossolani ed indicano una scarsa conoscenza delle basi del linguaggio SQL.
Te lo dico non per polemica o per accusarti, ma solo per farti prendere atto che prima di 'scrivere' bisogna 'studiare'.
Ovviamente, dato che stai usando gli alias nelle tabelle ma non nei nomi dei campi.
Comunque, facciamo così: dalla tua query togli As T1 e As t2 e dovrebbe funzionare (vedi sotto).
Un suggerimento: abituati a non scrivere l'enunciato SQL in una sola riga, ma suddividerlo su più righe, così:
codice:sql = "SELECT RG.RGcdg, Count(RG.RGcdg) AS Qta " sql = sql + " FROM RG INNER JOIN FI ON RG.RGcdg = FI.FIcdg " sql = sql + " WHERE RG.RGimp >= " + limite sql = sql + " AND RG.RGcat <> 550 " sql = sql + " AND RG.RGcat <> 399 " sql = sql + " AND RG.RGdatad >= " + td sql = sql + " GROUP BY RG.RGcdg "
Nota gli spazi aggiunti volutamente all'inizio ed alla fine di ogni riga.
Ne guadagnerai in leggibilità e di conseguenza in manutenzione.
Per finire, le interrogazioni ad una base dati si effettuano usando Command + Parametri che risolvono e prevengono un sacco di problemi (vedi esempi nella mia firma sia per NET che per VB6.0).
Ad esempio, se tu avessi usato un Command, il problema della formattazione della data non l'avresti avuto.![]()