некоторые другие замечания и советы:
1) Всегда указывайте, какой тип набора записей вы используете. Здесь, похоже, набор записей DAO, поэтому перейдите к полному объявлению вроде:
Dim rs as DAO.recordset
Запуск на другом компьютере и в зависимости от порядка объявления библиотек ADODB и DAO один и тот же код может вызвать ошибку.
2) Чтобы избежать неприятного сообщения об ошибке, если запись недоступна, можно добавить дополнительный тест, например,
if rs.recordcount = 0 then
Else
rs.moveFirst
....
3) Чтобы просмотреть полный набор записей с помощью debug.print, вы можете сделать это следующим образом. Просто объявите «m_debugLine» как строку и «fld» как DAO.Field в своих объявлениях.
rs.MoveFirst
do while not rs.eof
m_debugLine = ""
for each fld in rs.fields
m_debugLine = m_debugLine + vbTab + fld.value
next fld
debug.print m_debugLine
rs.movenext
loop
4) вы даже можете добавить строку debug.print, чтобы распечатать имена полей перед печатью данных. Я думаю, вы найдете это