Just adding on to essnrv:
CREATE A FORM (call it Form1)
* Add 2 text fields, name one 'StartDate' and the other 'FinishDate' (have these hidden if you like)
* Add a button - call it 'GetDates'. In its 'On Click' event add the following code:
Private Sub GetDates_Click()
On Error Resume Next
Dim CentreVal As Integer
Dim txtDate As String
Dim stDocName As String
StartDate = ""
FinishDate = ""
txtDate = InputBox("Enter Dates (eg. Nov 23 - Dec 01)", "INPUT DATES"

CentreVal = InStr(txtDate, "-"

- 1
If CentreVal <> 0 Then
If IsDate(Format(Left(txtDate, CentreVal, "Short Date"

) = True Then
If IsDate(Format(Right(txtDate, CentreVal, "Short Date"

) = True Then
StartDate = Trim(Left(txtDate, CentreVal))
FinishDate = Trim(Right(txtDate, CentreVal))
stDocName = "Report1"
DoCmd.OpenReport stDocName, acPreview
End If
End If
End If
End Sub
Report1 that the above code refers to is linked to a Query (Query1) which looks like this:
SELECT [Your Table Name].*
FROM [Your Table Name]
WHERE ((([Your Table Name].[Date Field]) Between [Forms]![Form1]![StartDate] And [Forms]![Form1]![FinishDate]));
Note that YEAR is not taken into account so it is always assumed that year = current year. However, this code should still work with years added...ie. "23 Nov 01 - 01 Dec 03"
![[yinyang] [yinyang] [yinyang]](/data/assets/smilies/yinyang.gif)