pass two parameters from form

  • Thread starter Thread starter jen
  • Start date Start date
J

jen

Hi,
I have a form, it passes a beginning date and an ending
date to a query in one date variable, which I used the
following: Between [Forms]![frmExtractReinstate]!
[txtBeginning] And [Forms]![frmExtractReinstate]!
[txtEnding] . on the form I have a view report
button,behind the button, I first checked the rst.EOF and
rst.BOF to see if there is any record in the query. If
there is no record, I will send out a message, saying
there is no record corrently, so you can not open the
report, but if there is any record, I want to open the
report, but when I check the query there are records in
the query, but when I wanted to click the button to open
the report, it always give me a message: Too few
parameters. Expected 2. Does anyone know what's wrong
with this and how to solve this problem?
Thanks,
jen
 
Access can figure out what the parameter is when the query is run in the
grid. Then Access will inform the Jet Engine what it is.

However, when the same query is run in code, you must tell the Jet engine
what the
parameter is yourself.

This is the slickest way to do it:

With queries that contain parameters that are all references to
controls on open forms, you can simulate the expression service that Access
provides when the queries are run through the user interface, as follows:

Set db = CurrentDb
Set qdf = db.QueryDefs("MyQuery")
Dim prm As Parameter

For Each prm In qdf.Parameters
prm.Value = Eval(prm.Name)
Next prm

Set rs = qdf.OpenRecordset(dbOpenDynaset)
' or qdf.Execute dbFailOnError
 
Back
Top