I added a module with the LastMonday function:
Code:
Public Function LastMonday(dDate As Date) As Date
'if today is Monday, then return today's date
If Weekday(dDate, vbSunday) = 2 Then
LastMonday = dDate
Else
LastMonday = dDate - Weekday(dDate, vbSunday) + 2
End If
End Function
(Source)
Then in the date field of the query I used this as the criteria:
Code:
Between DateAdd("ww",4,LastMonday(Date())) And DateAdd("d",6,DateAdd("ww",4,LastMonday(Date())))
This method allows you to process the data any time during the week (in case someone forgets to do it Monday) by using the last Monday as the base date. It then returns all records between 4 weeks and the 6 days following that from the base day.
You can try it out in the attached sample.