How to Refresh or Requery Open Forms and Reports in MS Access
Question details
Users need a reliable way to ensure open forms and reports in Microsoft Access reflect the most current shared data without causing errors or disrupting workflows.

- Product
- Microsoft Access
- Device & OS
- not provided
- Scenario
- Working in a shared Access database environment where multiple users are updating data, but open forms or reports do not automatically display the latest changes.
- Observed behavior
- Open forms and reports fail to update automatically after shared data changes. Commands like Me.Refresh or Me.Requery may fail or trigger Error 2046 when no specific object is selected.
Ensure you have the necessary design permissions to edit the form's VBA code, and test your changes in a safe development copy of your database before applying them to a live multi-user environment.
Requery Using the Form's Activate Event
Triggering a requery when the user switches back to the form ensures the latest data is loaded right when it is needed, without causing disruptive background refreshes.
Instead of running constant background refreshes that might interrupt a user's data entry, a common and highly effective approach is to requery the form only when it regains focus. By linking the requery action to the form's Activate event, the data updates automatically every time the user returns to the form.
Right-click the specific form in your Microsoft Access navigation pane and select 'Design View'.
Press F4 to open the Property Sheet. Ensure that 'Form' is selected in the dropdown menu at the top of the sheet.
Navigate to the 'Event' tab in the Property Sheet, find the 'On Activate' row, and click the ellipsis (...) button. Choose 'Code Builder' and click OK.
In the VBA editor, type 'Me.Requery' inside the Private Sub Form_Activate() block. Save the module and return to your form.

Provide a Manual Refresh Button for Users
Allowing users to manually refresh the form grants them control over when the screen updates, preventing sudden cursor resets or disruptions.
Set Up a Timer Interval for Automatic Requery
If you are displaying a read-only dashboard or report, setting a timer interval forces the form to update at set intervals without user interaction.
Looking for a Lightweight, Free Office Suite?
While Microsoft Access handles complex databases, WPS Office provides a powerful, free suite for all your daily document, spreadsheet, and presentation tasks. It is fully compatible with Microsoft Office formats and operates smoothly without slowing down your system.
- 1. Download the Installer: Visit the official WPS Office website and click the Free Download button.
- 2. Run the Installation: Open the downloaded installer file and follow the simple on-screen instructions.
- 3. Open Your Files: Launch WPS Office and instantly open or edit your existing Microsoft Office files without losing any formatting.

Frequently Asked Questions
What is the difference between Me.Refresh and Me.Requery in Access?
Me.Refresh only updates the data in the records currently displayed on your form, showing changes made by other users, but it does not add new records or remove deleted ones. Me.Requery completely reruns the query underlying the form, meaning it will display newly added records and remove deleted ones.
Why do I get Error 2046 when running the acCmdRefresh command?
Error 2046 occurs when a specific command is not available in the current context. For example, if no object is selected, if the database is in a read-only state, or if the form's focus is on a control that doesn't support the refresh action, Access will trigger this error.
Will automatic requerying disrupt other users in a shared Access database?
An automatic requery on a tight timer can disrupt the person currently using that specific form by resetting their cursor to the first record or interrupting their typing. It generally does not disrupt other users working on different machines, but user-controlled refreshes or Activate event requeries are considered better practices for user experience.




