SELECT qryExpensesNew.trans_date, qryExpensesNew.trans_chkno, qryExpensesNew.Draw_Date, qryExpensesNew.Amount, qryExpensesNew.report_param_2, qryExpensesNew.report_param_1FROM qryExpensesNew;
SELECT Format([Enter Draw Start],"Short date") & " through " & Format([Enter Draw End],"Short Date") AS report_param_1, [Enter Notes] AS report_param_2, tblTrans.trans_date, tblTrans.trans_chkno, tblExpenses.*FROM tblTrans RIGHT JOIN tblExpenses ON tblTrans.trans_chkno = tblExpenses.Check_NoWHERE (((tblExpenses.Data_Type)='Exp') AND ((tblExpenses.Draw_Date) Between [Enter Draw Start] And [Enter Draw End]));
SELECT qryExpensesNew.trans_date, qryExpensesNew.trans_chkno, qryExpensesNew.HUD_Draw_Date, qryExpensesNew.Amount, qryExpensesNew.report_param_2, qryExpensesNew.report_param_1FROM qryExpensesNewWHERE CInt(Check_No) > 1500;
In some cases, string comparison would be fine Check_No>'1500'If Check_No is always 4 characters with leading zeros then it would work fine, but if Check_No could be '999' then that would satisfy >'1500'
Check_No>'1500' And Check_No<'1601' would work fine if Check_No is always 4 characters
Len(Check_No)=4 And Check_No>'1500' And Check_No<'1601' would work fine if Check_No could have various lengths but you only wanted 4-character ones.
Bill Manville Excel MVP/TAOxford, England
SELECT qryExpensesNew.trans_date, qryExpensesNew.trans_chkno, qryExpensesNew.Check_No, qryExpensesNew.Draw_Date, qryExpensesNew.Amount, qryExpensesNew.report_param_2, qryExpensesNew.report_param_1 FROM qryExpensesNew WHERE qryExpensesNew.Check_No >= [Start with check number] AND qryExpensesNew.Check_No <= [End with check number] AND trans_date IS NULL AND LEN(qryExpensesNew.Check_No) = 4;
Pleased to have simplified the problem - I often find that when I go back to something I wrote earlier I can see a better way to do it - such is the process of learning.
Incidentally you won't pick up any 'none' or similar because they will not be alphabetically between the 2 limiting check numbers.