У вас нет блока ошибок, у вас есть проверка на rs.eof.
Я предпочитаю проверять нулевые строки с
if (rs.eof) and (rs.bof)..
, поскольку это условие может быть истинным, только если набор записей пуст, а не только тогда, когда указатель находится не там, где вы ожидаете, или жирный курсор все еще заполнен.
Вы уверены, что код не выполняет в точности то, для чего он предназначен, и показывает сообщение, когда строк нет?
Попробуйте stug debug.print, чтобы получить фактический выполняемый запрос, и попробуйте запустить его непосредственно для базы данных. Это подтвердит две вещи:
- Запрос формируется так, как вы ожидаете, включая значения, которые вы выводите из формы
- Данные в таблице фактически содержат строку, которая должна была быть перехвачена.