You have following option:
Use AJAX to load/reload data upon changing month in your drop down (you call it filtering)
Just submit this form to itself, retrieve value of the month selected and pass it to select statement.
From the code provided it is unclear why do you have this part:
<%
Dim rsDate
Dim rsDate_cmd
Dim rsDate_numRows
Set rsDate_cmd = Server.CreateObject ("ADODB.Command")
rsDate_cmd.ActiveConnection = MM_TTTCon_STRING
rsDate_cmd.CommandText = "SELECT * FROM tttCalls ORDER BY monthNum ASC"
rsDate_cmd.Prepared = true
Set rsDate = rsDate_cmd.Execute
rsDate_numRows = 0
%>
since it is not in use anywhere. But if you decide to use submit option change your code as follows:
Dim rsCall, intMonthSelected,strSQL
Dim rsCall_cmd
Dim rsCall_numRows
if len(Request.Form("Step1"))>0 then
intMonthSelected=cInt(Request.Form("Step1"))
else
intMonthSelected=0
end if
if intMonthSelected=0 then
strSQL="SELECT * FROM tttCalls ORDER BY theDate ASC"
else
strSQL="SELECT * FROM tttCalls where Month(theDate)=" & intMonthSelected & " ORDER BY theDate ASC"
end if
Set rsCall_cmd = Server.CreateObject ("ADODB.Command")
rsCall_cmd.ActiveConnection = MM_TTTCon_STRING
rsCall_cmd.CommandText = strSQL
rsCall_cmd.Prepared = true
Set rsCall = rsCall_cmd.Execute
rsCall_numRows = 0
%>
rest will be the same as what you have. After you submit page it will show records for the month(from 1 to 31 depend on the length of the month) selected in dropdown. If you need a range of dates it will be a bit more complicated.