i have an access database that I import maintenance jobs/actions, that I get from a web report as a csv excel file. these maintenance jobs are reoccurring items like oil changes and things like that. each of them have a calendar or hourly increment. so like an oil change is every 3 months and my report gives me "next due date" and "last accomplished date". i import the csv report into access about weekly with a macro but not always on the same day of the week. I have an added field in the table for csv import date so that I can decipher between the csv reports that i import. I need to query all jobs/actions that were accomplished last month so that I can come up with a report of the past months performance. I have a couple problems to overcome. some maintenance jobs happen more than once in a month. example: window wash every 15 days, csv report imported on 2/2/2015 shows last accomplished 1/26/2015 and next due 2/10/2015. csv report imported on 2/9/2015 has the same dates for this maintenance job. but now the csv report imported on 2/17/2015 shows that same job last accomplished 2/10/2015 and next due 2/25/2015. i have to be able to query for this job from multiple reports or i will not get all maintenance actions for the month. so i cannot just query the MAX import date. so how would i query for the most recent several reports? would that even work? in the end, i need to be able to pull up an access report that shows all jobs due in the previous month, this would need to be from all records with an import date of before the previous month so that i have a starting set of records. then i would need an import date of current month to find all the dates last accomplished within previous month so that i have an ending set of records. but items that happen more than once a month will be missed so i would need a mid-month import to get these jobs. does anyone have any ideas on how i can query for these records?