Adding a number to each record in an Access report can be helpful to readers. Learn how to add the appropriate control and expression to get the right results.
Numbering records in a report can make it more readable. It’s a familiar element that helps readers discern the current record from the previous and the next. In addition, it has actual analysis value because the number means something — the number of students, the number of products, the number of orders and so on. You can even sort by the results to get a top 10 list. Fortunately, numbering records in an Access report is easy.
In this article, you’ll learn how to number records in an Access report. We’ll use an existing report to simplify things, but in doing so, we’ll expose a problem. Don’t worry though, the solution is simple, but it’s the type of thing that can happen when working with existing Access objects.
I’m using the Northwind legacy database that comes with Access 365 (Figure A). If you want to follow along, be sure to respond to the Enable Content prompt so you can modify the database. In addition, the database will prompt you to log in.

For our purposes, it makes no difference which employee you choose.
ACADEMY: Buy and learn how to use the applications in Microsoft Office Pro Plus 2019.
We’ll add a numbering line to the existing Monthly Sales Report report shown in Figure B. You can use almost any report to follow along, though.

Northwind will open the main form, which you can leave open or close.
Let’s start by accessing the Monthly Sales Report report as follows:


With the report open in Design View, you’re almost ready to add a new control to the Details section. Before doing so, you must move the existing controls to the right to make room. If you’re working with your own report and you don’t need to take this step, you can skip to the next section.
If you’re following along with the example report, do as follows:


After making room for the control, adding it is a snap:



At this point, the control is in place and visible in Report View, but it won’t return a list of consecutive numbers. As is, it will return the number 1 for each record. Fortunately, this is a simple fix:

You’re finally ready to view the report, so choose Report View from the Views dropdown in the Views group. You can also right-click the report’s tab and choose Report View. Figure K shows the results, which has a bit of a surprise; the number 7 is missing.

When working with your own data and reports, it’s unlikely you’ll run into an error such as this, but that’s why I chose this specific report. There’s a lot going on that we haven’t discussed, and that’s why the numbering control doesn’t work as expected.
SEE: Not sure if Access is right for you? Check out these top database DevOps tools.
The short solution is to change the Running Sum setting from Over All to Over Group. Admittedly, that doesn’t make sense — not yet — but it works.
With a bit of sleuthing, you can find an open report event procedure that sets the value for the SalesGroupField and Total Sales fields (Figure L). Without going into a lot of technical explanation, the report is a grouped report, but you’d not know that from viewing the report in Design View.

When modifying an existing report, it’s easy to run into situations where the report doesn’t work as expected. When this happens, look for a VBA event procedure or a macro.
You might be wondering if adding an AutoNumber field might be easier. AutoNumber fields ensure uniqueness, not proper sequencing. It’s the wrong tool for the job and can have unintended consequences:
By following the steps in this article, you can effectively add sequential numbers to your Access report, improving its clarity and usability for readers.