Is this a multi-user situation? If there is any kind of pause between when
you deliver the first 60 records and the next, you might need to consider
whether users could be adding new records or deleting records during this
time. If there is, the concept of the 'next 60' might be uncertain.
One approach would be to create a temporary table where you hold the ID
value of the records you have served up. Say two fields:
- ID Number
- BatchID Number
For the 'First 60' request, you execute 2 action queries:
- a DELETE to clear the temp table out;
- an Append, to insert the TOP 60 as batch 1.
You then INNER JOIN your original table to this, and serve up the results..
For the 'Next 60', use the Unmatched Query Wizards (first dialog when you
create a query) to get a query for the records in your original table that
are not in the temp. table. Modify it to TOP 60, and change it to an Append
query to it writes the results to the temp table. The batch number will be
the max in the temp table + 1, and you serve up just that batch.
Sometimes Access struggles with writing from a non-updatable query (for the
temp table.) If that happens, use a subquery (rather than a frustrated outer
join) to identify the TOP 60 to write to the temp. table:
http://allenbrowne.com/subquery-01.html