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