Sub query is something different from an inline selectI beg to differ - the subquery is filtered so only the relevant records are selected.
SELECT EmployeesDetailQ.[Emp#], EmployeesDetailQ.NickName, Sum([Salaries YTD].DaysSick) AS SumOfDaysSick, EmployeesDetailQ.YearsEmploy, (DateDiff("m",[DateofEngagment],Date())) AS MonthsEmpl, (Int(DateDiff('m',[dateofengagment],Date())\36)) AS [Cycle#], EmployeesDetailQ.DateOfEngagment, DateAdd("m",(Int(DateDiff("m",[DateofEngagment],Date())/36)*36),[DateOfEngagment]) AS SCStart, [Salaries YTD].Date
FROM EmployeesDetailQ INNER JOIN [Salaries YTD] ON EmployeesDetailQ.[Emp#] = [Salaries YTD].[Emp#]
GROUP BY EmployeesDetailQ.[Emp#], EmployeesDetailQ.NickName, EmployeesDetailQ.YearsEmploy, (DateDiff("m",[DateofEngagment],Date())), (Int(DateDiff('m',[dateofengagment],Date())\36)), EmployeesDetailQ.DateOfEngagment, DateAdd("m",(Int(DateDiff("m",[DateofEngagment],Date())/36)*36),[DateOfEngagment]), [Salaries YTD].Date, EmployeesDetailQ.LeftCompany
HAVING (((EmployeesDetailQ.LeftCompany)=No));
SELECT SickLeavePrep1.[Emp#], SickLeavePrep1.NickName, SickLeavePrep1.SumOfDaysSick, SickLeavePrep1.YearsEmploy, SickLeavePrep1.MonthsEmpl, SickLeavePrep1.[Cycle#], SickLeavePrep1.DateOfEngagment, SickLeavePrep1.SCStart, DateAdd("m",36,[ScStart])-1 AS ScEnd, SickLeavePrep1.Date
FROM SickLeavePrep1;
SELECT SickLeavePrep2.[Emp#], SickLeavePrep2.NickName, SickLeavePrep2.DateOfEngagment, SickLeavePrep2.[Cycle#], SickLeavePrep2.SCStart, SickLeavePrep2.SCEnd, 30-Nz((Sum([SumOfDaysSick]))) AS SickdaysLeft, (Sum([SumOfDaysSick])) AS SickDaysUsed
FROM SickLeavePrep2
WHERE (((SickLeavePrep2.Date) Between [ScStart] And [ScEnd]))
GROUP BY SickLeavePrep2.[Emp#], SickLeavePrep2.NickName, SickLeavePrep2.DateOfEngagment, SickLeavePrep2.[Cycle#], SickLeavePrep2.SCStart, SickLeavePrep2.SCEnd;