В отчете нет SourceObject
. Вот почему Access выдает ошибку # 2465, «Определенная приложением или объектная ошибка» при попытке ссылаться на нее.
Вот Немедленный пример окна из моей системы:
' first demonstrate the report is accessible ...
Debug.Print Reports!rptFoo.Name
rptFoo
' now when referencing SourceObject ...
Debug.Print Reports!rptFoo.SourceObject ' <-- error 2465
Может быть, вы хотите изменить содержащиеся в докладе RecordSource
вместо:
' current RecordSource ...
Debug.Print Reports!rptFoo.RecordSource
SELECT rmy.id, rmy.reportDate, rmy.gainOrLoss FROM record_matYields AS rmy;
' change RecordSource to a saved query ...
Reports!rptFoo.RecordSource = "qryBar"
' confirm RecordSource was altered ...
Debug.Print Reports!rptFoo.RecordSource
qryBar
В отчете отображается 6 строк с оригинальным RecordSource
. Сохраненный запрос включает условие WHERE
, которое ограничивает результаты только двумя из этих строк. Таким образом, изменение RecordSource
, как и выше, заставило отчет отображать только те 2 строки без принудительного вывода отчета в режим разработки, в отличие от макроопределения, упомянутого в вашем комментарии.
К сожалению, я не знаю достаточно о макросах, чтобы помочь вам исправить вашу. Я в основном избегаю макросов.
Какие проблемы возникают при использовании этой строки кода? – Newd
Извините, я полностью забыл включить это. Редактирование сейчас. – santh821
Открыта ли [Форма поиска], когда вы пытаетесь это сделать? – Newd