use switch rather than case in sql, beats a load of nested iif's, however for here an iif will do (assuming using access backend)
Code:
SELECT DISTINCTROW BEmployees.EmployeeCRN AS Expr1, BEmployees.LastName AS Expr2, BEmployees.FirstName AS Expr3, [FirstName] & " " & [LastName] AS Consultant
FROM BEmployees INNER JOIN [Name Substitution] ON BEmployees.FirstName = [Name Substitution].NameToShow
WHERE
(([Name Substitution].Current_User)=CurrentUser()) AND
iif(Me.Check59=true,BEmployees.SecurityLevel=1 Or BEmployees.SecurityLevel=2 Or BEmployees.SecurityLevel=3, BEmployees.SecurityLevel=1 Or BEmployees.SecurityLevel=2)=True
ORDER BY BEmployees.LastName, BEmployees.FirstName DESC , [FirstName] & " " & [LastName];
No comment on
whether you are referencing Check59 correctly
why you are aliasing what looks like perfectly acceptable names with Expr1 etc
why you are ordering desc then asc