Microsoft KB Archive/174727

From BetaArchive Wiki

Article ID: 174727

Article Last Modified on 1/20/2007


  • Microsoft Access 97 Standard Edition

This article was previously published under Q174727

Moderate: Requires basic macro, coding, and interoperability skills.


When you use the OpenReport action in a macro and specify a query name to be used as a filter for the report, you may receive the following error message when you run the macro:

Syntax error (missing operator) in query expression '()'


Use the RecordSource property to change the record source of the report to the query.


Modify the query that is used as a filter for the report. To do so, follow these steps:

  1. Open the query in Design view.
  2. Add the following field to the query grid:

       Field: True
          Show: No
          Criteria: <>False
  3. Save and close the query.


Microsoft has confirmed this to be a problem in Microsoft Access 97.


Steps to Reproduce Problem

  1. Open the sample database Northwind.mdb, and create a new report based on the Products table.
  2. If the Field List is not displayed, on the View menu, click Field List, and drag the ProductID, ProductName, and CategoryID fields to the detail section of the report.
  3. Save the report as MyReport, and then close the report.
  4. Create a new query based on the Products table.
  5. Add the ProductID, ProductName, and the CategoryID fields to the query grid.
  6. In the Sort row, select Ascending for the ProductName column.
  7. Save the query as MyQuery, and then close the query.
  8. Create the following new macro, and then save it as MyMacro:

       Action Arguments
       Report Name: MyReport
       View: Print Preview
       Filter Name: MyQuery
  9. On the Run menu, click Run. Note that you receive the following error message:

    Syntax error (missing operator) in query expression '()'.

Additional query words: pra ()

Keywords: kbbug kberrmsg KB174727