How to Move Records Up or Down in a Continuous Access Form
Question details
The user needs to add up and down buttons to a continuous Microsoft Access form to manually reorder records, while maintaining a sequential index field and keeping the cursor focus on the moved record.

- Product
- Microsoft Access
- Device & OS
- not provided
- Scenario
- Customizing a continuous form where users need to manually rank or reorganize the display order of categories or records using control buttons.
- Observed behavior
- Changing a record's position requires updating an underlying index sequence, which natively breaks contiguous numbering or causes the form to lose focus when the dataset is requerying.
Ensure your underlying Access table has a dedicated numeric field (such as 'SortIndex') to store the sort order, and verify that the continuous form's 'Order By' property is set to use this field.
Use Spaced Index Values for Flexible Sorting
If a strict contiguous sequence (1, 2, 3...) is not required, spacing out your index values is the easiest way to insert or move records without writing complex VBA code.
By leaving gaps in your index sequence, you can easily slide new records or move existing records into intermediate positions simply by assigning a value that falls between two existing numbers.
Instead of numbering your records 1, 2, 3, assign them spaced values such as 100, 200, 300, and 400 in the table.
To place a category between the first and second records, manually change its index value to an intermediate number, like 150.
Press F5 or use a simple refresh macro button to apply the new sort order based on the updated intermediate values.
Use VBA and Update Queries to Maintain Contiguous Sequence
If your index must remain strictly contiguous, use VBA behind up/down buttons to adjust the sequence, requery the form, and restore focus.
Manage and Sort Data Easily with WPS Office
While Microsoft Access is powerful for complex databases, many data tracking, manual sorting, and list management tasks can be handled much more easily in a spreadsheet environment. WPS Office provides a lightweight, highly compatible alternative to Microsoft Office for all your everyday data needs.
- 1. Download WPS Office: Install WPS Office for free from the official website.
- 2. Open Your Data File: Launch WPS Spreadsheet and import your data lists or CSV files.
- 3. Sort with Ease: Use the built-in Sort & Filter tools under the Data tab to instantly reorder your records without complex coding.

Frequently Asked Questions
Why does my continuous form jump to the first record after moving an item?
When you execute the Me.Requery command in Access to refresh the sort order, the form's recordset is reloaded. By default, this resets the cursor to the very first record. To fix this, you must capture the primary key of the edited record before requerying, and use VBA to locate and jump back to that bookmark afterward.
Can I drag and drop records to reorder them in Access?
No, native Microsoft Access continuous forms do not support drag-and-drop row reordering. You must rely on numeric index fields and implement custom up/down command buttons to manipulate the sort order manually.
What happens to my contiguous index if I delete a record?
Deleting a record will leave a gap in a strictly contiguous index sequence. If you require absolute continuity, you should create an After Del Confirm event in VBA that runs an UPDATE query to subtract 1 from the index of all records that sequentially follow the deleted item.





