I read this on another web site. It sounds like what you want to do--<br><br>Your application may need to produce a report or query which has each row of output numbered to enhance report readability or to print only every X row of output. You can easily create a query which has an auto number assigned field for each row of output by using a subquery. <br>A subquery is a query which is imbeded within your target query or report recordsource. They are often used to limit data to a subset of a standard recordset, find dublicate records or another action. To create an auto number field, we use a subquery as a field in our query to count the number of records which occured in the output of the target query before the current row. <br><br>Critical to creating the auto number subquery is basing the subquery a virtual copy of a unique index of the main query's recordset and include the same parameters for output that the main query does. As an example in an order's report, usually the order number would be a unique field in the target query or recordset. <br><br>If you were listing all orders in the table, "tblOrders" and wanted to auto number the output rows of such an order query, you would enter the following in an output field of the orders query: <br><br>RowNum: (Select Count (*) FROM [tblOrders] as Temp <br>WHERE [Temp].[OrdNum] < [tblOrders].[OrdNum])+1<br>If you need to constrain your query's output (as is usually the case,) to a specific set of records, you must add the same constraints to your auto number subquery, so that the temporary virtual recordset generated by the subquery has the same result set as your main query. So if as an example you wanted the output or target query to only list orders between a specific "StartDate" and "EndDate" you would also add the same parameters to the subquery previously shown, so that your subquery in the field would now read: <br>RowNum: (Select Count (*) FROM [tblOrders] as Temp <br>WHERE ((Temp.[OrdDate] BETWEEN [Startdate] AND [EndDate] ) <br>AND ([Temp].[OrdNum] < [tblOrders].[OrdNum])))+1<br>This technique would work on any unique index contained in your main query be it either a numbered index, or alpha index. <br>