A family of Microsoft relational database management systems designed for ease of use.
SInce your queriy does not include any fields, you do not need the GROUP By caluse.
But, I was expecting/hoping all your data was in one table with a field that specified if a record is a screen record or an eligible record. In this case the "row header" would be be record type field (anf a GROUP BY would be required.
Having 10 data tables sounds like trouble that will need at least one query per table. When using multiple tables for different data, you can combine the data using Unions of the indivifual querys. For example:
SELECT "Screen" As Type,
Sum(IIf(Year(FormDate) = 2008, 1, 0)) AS Screen1,
Sum(IIf(Year(FormDate) = 2009, 1, 0)) AS Screen2,
Sum(IIf(Year(FormDate) = 2010, 1, 0)) AS Screen3,
Sum(IIf(Year(FormDate) = 2011, 1, 0)) AS Screen4,
Sum(IIf(Year(FormDate) Between 2008 And 2011, 1, 0)) AS ScreenTotal
FROM tblClients LEFT JOIN tblScreenings
ON tblClients.[UID] = tblScreenings.[ClientUID]
WHERE tblClients.ClientID Is Not Null AND Mid(tblClients.ClientID, 13, 1))=""
UNION ALL
SELECT "Eligible" As Type,
Sum(IIf(Year(FormDate) = 2008, 1, 0)) AS Eligible1,
Sum(IIf(Year(FormDate) = 2009, 1, 0)) AS Eligible2,
Sum(IIf(Year(FormDate) = 2010, 1, 0)) AS Eligible3,
Sum(IIf(Year(FormDate) = 2011, 1, 0)) AS Eligible4,
Sum(IIf(Year(FormDate) Between 2008 And 2011, 1, 0)) AS EligibleTotal
FROM tblClients LEFT JOIN tblEligibles
ON tblClients.[UID] = tblEligibles.[ClientUID]
WHERE tblClients.ClientID Is Not Null AND Mid(tblClients.ClientID, 13, 1))=""
UNION ALL
. . .