Кажется достаточно простой задачей, но я вижу странный результат.
1) Набор записей основан на действительном запросе, который возвращает 2739 записей
2) Когда я .MoveFirst
затем выполните команду .MoveNext
, отправив вывод в debug.print, и цикл, похоже, пропускает первые 2540 записей. Индексные номера совпадают со значениями идентификатора из моего запроса.
3) Упрощенный код ниже достигает EOF, как и ожидалось
Есть предложения, что может произойти?
Dim rs1 As DAO.Recordset
Dim n As Integer
Dim db As Database
Set db = CurrentDb
Set rs1 = db.OpenRecordset("myQuery")
n = 0
With rs1
.MoveFirst
Do Until .EOF
n = n + 1
Debug.Print n & " - " & .Fields("INPUT_ID")
.MoveNext
Loop
End With
Результаты отладки выглядят следующим образом:
2541 - 26023261
2542 - 26023262
2543 - 26023263
<<snip>>
2737 - 26023457
2738 - 26023458
2739 - 26023459
Что случилось со строками с 1 по 2540?