If you are building the sql statement in code then your punctuation around the Where clause has gone awry.
And the left join will not operate as a left join because of the selection, it will operate as an inner join.
But I think it's an inner join you really want here.
strsql= "SELECT * FROM WorkOrders INNER JOIN (SELECT [tblEmployees].[lngEmpID], [tblEmployees].[EmployeeName] FROM tblEmployees ORDER BY [EmployeeName]) AS Lookup_Mechanic ON WorkOrders.Mechanic = Lookup_Mechanic.lngEmpID WHERE Lookup_Mechanic.EmployeeName='" & GloginEmp & "'"
I notice that you are using both Global and Public in your definitions.
Global is dead (but still works). Public is current usage.