The problem lies here:
rstTemp.Filter = strField1 & " = '" & strFilter1 & "' AND " & strField2 & " = #" & strFilter2 & "# AND " & strField3 & "= '" & strFilter3 & "'"
It should look something like this:
Code:
rstTemp.Filter = "[strField1] = '" & strFilter1 & _
"' AND [dtmField2] = #" & dtmFilter2 & _
"# AND [strField3] = '" & strFilter3 & "'"
Or in general:
rstTemp.Filter = "[Text Field] = '" & Passed Argument & "'"
rstTemp.Filter = "[Datet Field] = #" & Passed Argument & "#"
rstTemp.Filter = "[Numeric Field] = " & Passed Argument
You have:
rstTemp.Filter = Passed Argument & " = '" & Passed Argument & "'"
which makes no sense. Also, as a side note, if a field is a date, don't prefix it with "str". Prefix it with "dtm". Therefore, in your case strField2 would be dtmField2. It keeps you from type mismatch problems when you code by cluing you in to use # instead of '.
Greg Serrano
Michigan Dept. of Environmental Quality, Air Quality Division