

Я пытаюсь использовать DLookup в макросе, чтобы получить счетчик из запроса, но он не позволяет мне, и я получаю ошибку 2001. Я пытался найти решение, но не смог его найти. Я прилагаю рис макроса и ошибки. Любой совет приветствуется.


Я пытаюсь использовать DLookup в макросе, чтобы получить счетчик из запроса, но он не позволяет мне, и я получаю ошибку 2001. Я пытался найти решение, но не смог его найти. Я прилагаю рис макроса и ошибки. Любой совет приветствуется.
Возможная причина (трудно подтвердить без вашей базы данных): вы получите эту общую ошибку (2001), если функция DLookup ошибкой при определенных условиях. Условие IF сработало (потому что диалоговое окно «Ошибка макроса» говорит о том, что оно выполнено), и если целевое поле SetValue (Item) было бы неправильным, получило бы другой номер ошибки.
Функция DLookup может завершиться с ошибкой, если, например, имя поля, таблицы или запроса неверно или тип данных неверен (в выражении критерия).
Вы можете проверить правильность аргументов DLookup , вставив выражение в окно непосредственного доступа VBA: нажмите Alt-F11 чтобы открыть IDE VBA, и Ctrl-G чтобы открыть окно немедленного ввода, вставьте следующее и нажмите Enter:
?DLookup("CountOfTreatment_ID","FacilityTreat_CountMacro_Qry","Facility_IDx=1")
Сообщение об ошибке при его запуске даст вам немного больше информации о проблеме.