Ok, let's parse this out. I'll be SO glad when Microsoft allows comments and
retains layout in the SQL window:
SELECT tblcourse.trainer, tblRetirementRespondentold.coursedate,
tblRetirementRespondentold.coursenumber, tblcourse.class,
Count(tblRetirementRespondentold.RespondentNumber) AS CountOfRespondentNumber,
Sum(tblRetirementRespondentold.Q1excellent) AS SumOfQ1excellent,
Sum(tblRetirementRespondentold.Q2excellent) AS SumOfQ2excellent,
Sum(tblRetirementRespondentold.Q3excellent) AS SumOfQ3excellent,
Sum(tblRetirementRespondentold.Q4excellent) AS SumOfQ4excellent,
Sum(tblRetirementRespondentold.Q1good) AS SumOfQ1good,
Sum(tblRetirementRespondentold.Q2good) AS SumOfQ2good,
Sum(tblRetirementRespondentold.Q3good) AS SumOfQ3good,
Sum(tblRetirementRespondentold.Q4good) AS SumOfQ4good,
Sum(tblRetirementRespondentold.Q1fair) AS SumOfQ1fair,
Sum(tblRetirementRespondentold.Q2fair) AS SumOfQ2fair,
Sum(tblRetirementRespondentold.Q3fair) AS SumOfQ3fair,
Sum(tblRetirementRespondentold.Q4fair) AS SumOfQ4fair,
Sum(tblRetirementRespondentold.Q1poor) AS SumOfQ1poor,
Sum(tblRetirementRespondentold.Q2poor) AS SumOfQ2poor,
Sum(tblRetirementRespondentold.Q3poor) AS SumOfQ3poor,
Sum(tblRetirementRespondentold.Q4poor) AS SumOfQ4poor
FROM tblcourse
INNER JOIN tblRetirementRespondentold
ON (tblcourse.trainer = tblRetirementRespondentold.trainer)
AND (tblcourse.coursenumber = tblRetirementRespondentold.coursenumber)
AND (tblcourse.coursedate = tblRetirementRespondentold.coursedate)
GROUP BY tblcourse.trainer, tblRetirementRespondentold.coursedate,
tblRetirementRespondentold.coursenumber, tblcourse.class
HAVING (
((tblcourse.trainer) Like [Trainer Name])
AND
((tblRetirementRespondentold.coursedate)
Between [Beginning Date] And [Ending Date])
AND
((tblRetirementRespondentold.coursenumber)=
[Forms]![ENTER COURSE NUMBER]![coursenumber]));
I don't see any parenthesis errors: are you still getting them?
I'd suggest changing the word HAVING to WHERE - HAVING sums all the records in
the entire table and then discards those sums which don't fit the criteria,
but WHERE filters the records first and then sums, so it's much more
efficient. Try copying and pasting this entire SQL string into the SQL window
of a new query; change HAVING to WHERE; and see if that works for you.
John W. Vinson [MVP]