Code:
SELECT TimesheetData.Invoiced, StaffT.Staff_Name, TimesheetData.Quantity_Expenses, TimesheetData.Quantity_Hours, TimesheetData.PO_ID, TimesheetData.ID, TimesheetData.Quantity_miles, TimesheetData.WeekEnding
FROM (StaffT INNER JOIN PO_engineers ON StaffT.Staff_ID = PO_engineers.Engineer_ID) INNER JOIN TimesheetData ON PO_engineers.PO_ID = TimesheetData.PO_ID
WHERE (((StaffT.Staff_Name) Like "*" & [Forms]![TimesheetData]![Combo19] & "*" Or (StaffT.Staff_Name) Is Null) AND ((TimesheetData.WeekEnding)>=[Forms]![TimesheetData]![datefrom] And (TimesheetData.WeekEnding)<=[forms]![TimesheetData]![dateto])) OR ((([Forms]![TimesheetData]![dateto]) Is Null)) OR ((([Forms]![TimesheetData]![datefrom]) Is Null));
had to account for both boxes. Makes sense.