Here is a small test to show the order of the records.
Code:
Sub makealoop2()
Dim rs As DAO.Recordset
Dim db As DAO.Database
Dim ToTtonnes As Integer
Dim i As Integer
Set db = CurrentDb
Set rs = db.OpenRecordset("tblTonnesTest")
With rs
Do While Not .EOF
i = i + 1
'show the order of the records
Debug.Print i & " " & !Products & " " & !Tonnes
rs.MoveNext
Loop
.Close
End With
Set rs = Nothing
End Sub
and here are the 13 records
1 cat 70 60
2 cat 50 50
3 cat 45 40
4 cat 45 135
5 cat 70 50
6 cat 70 55
7 cat 70 55
8 cat 45 100
9 cat 70 50
10 cat 50 50
11 cat 45 120
12 cat 70 50
13 cat 45 60
Where did this come from
and the code now starts on the 8th record and not the first.