This article was previously published under Q209113
This article has been archived. It is offered "as is" and will no longer be updated.
For a Microsoft Access 97 version of this article, see 112747.
Moderate: Requires basic macro, coding, and interoperability skills.
This article applies to a Microsoft Access database (.mdb) and to a Microsoft Access project (.adp).
This article lists several things that you can do to improve the speed and performance of your subforms.
To improve subform performance, try these tips:
If you can, base your subforms on queries rather than tables. Include only those fields from the record source that are absolutely necessary. Extra fields can decrease subform performance.
Index all the fields in the subform that are linked to the main form. Indexes help speed the search process to find the matching subform records.
Index any fields used for criteria (such as when a subform is based on a criteria query).
If you are linking on multiple fields, add a calculated field to the main form that concatenates the fields. Then create a calculated column in the subform's RecordSource property query with the same expression. For example, to link to the subform on an Employee ID field and an Order ID field, add a text box to the main form with the following properties:
Because Microsoft Access has to compare only one criteria to return the subform's recordset, the subform's performance should improve.
Set the subform's DefaultEditing property to Read-Only if the records in the subform are not going to be edited.
If your subform is a continuous form and contains combo boxes, explicitly justify the combo box in the subform's form Design view. This practice prevents Microsoft Access from determining the proper justification of the combo box values for each record, and therefore speeds the display of subform records that have combo boxes.
For more information about general performance and indexingrecommendations, click Microsoft Access Help on the Help menu, type optimize performance in the Office Assistant or the Answer Wizard, and then click Search to view the topic.