How to Automatically Move to the Next Form Field After a List Box Selection in MS Access
Question details
Automatically shift the cursor or input focus to another specific form control immediately after an item is selected from a list box.

- Product
- Microsoft Access
- Device & OS
- not provided
- Scenario
- Creating or filling out a form in Microsoft Access where selecting an item in a list box should seamlessly prompt the user to the next logical input field to speed up data entry.
- Observed behavior
- By default, the focus remains on the list box after a user makes a selection, requiring manual navigation such as pressing the Tab key or clicking to move to the next field.
Before adding VBA code to your Access form, open the Property Sheet to confirm the exact system names of both your list box control and the target control that will receive the focus.
Use the After Update Event with a VBA Macro
Add a short VBA code snippet to the list box's After Update event to programmatically set the focus to the desired target control upon selection.
This method uses the SetFocus method in VBA, which tells Microsoft Access to move the active cursor to a specified control immediately after the list box's value has been updated by the user.
Right-click your form in the navigation pane and select 'Design View'.
Click on your list box control to select it, then press F4 to open the Property Sheet pane on the right side of the screen.
Navigate to the 'Event' tab in the Property Sheet, click on the 'After Update' row, and click the build button (...) that appears on the right. Select 'Code Builder' and click OK.
In the VBA editor, insert the command 'Me.[NameOfNextControl].SetFocus' between the Private Sub and End Sub lines. Replace 'NameOfNextControl' with the exact name of the target control.
Save your VBA code, close the editor, switch your form back to 'Form View', and click an item in the list box to verify that the focus jumps to the next field.

Looking for a Lightweight and Cost-Effective Office Suite?
While Microsoft Access is a specialized database tool, the vast majority of daily productivity tasks revolve around documents, spreadsheets, and presentations. WPS Office is a powerful, free alternative to Microsoft Office that handles your essential business files without heavy subscription fees.
- 1. Download the Installer: Visit the official WPS website and download the free WPS Office installer for your operating system.
- 2. Install the Suite: Run the downloaded setup file and follow the quick on-screen instructions to complete the installation.
- 3. Open Your Files: Launch WPS Office and open your existing Microsoft Office documents to continue working seamlessly.

Frequently Asked Questions
Can I use the Macro Builder instead of VBA to move focus in Access?
Yes. Instead of choosing Code Builder in the After Update event, select Macro Builder. Add the 'GoToControl' action from the dropdown menu and type the name of your target control in the Control Name argument.
Why shouldn't I use the On Click event for the list box?
The On Click event fires every time the list box is clicked, even if the user clicks a blank area or doesn't actually change the selection. The After Update event is much more reliable because it only triggers after a valid data selection has been committed.
Does this SetFocus method work for combo boxes as well?
Yes, the exact same VBA method (Me.[ControlName].SetFocus) can be applied to the After Update event of a combo box to automatically advance the cursor once an item is chosen from the dropdown list.
What happens if the next control is on a different tab page?
If the target control is located on a different page of a Tab Control, you must first set focus to the specific Tab Page itself, and then set focus to the target control on that page using two consecutive SetFocus commands.




