тянул меня за волосы с этим. Искал везде и не могу заставить кого-либо работать. Вот мой сценарий:
У меня есть отчет с несколькими подотчетами из связанных таблиц. Я хотел бы сгруппировать подотчеты для сортировки по заданному полю на основе значения переменной с именем SORT_BY и принудительно разрывать страницу для каждого значения. То есть группировать подотчет по ItemDescription или ItemLocation. Переменная SORT_BY задается в диалоге пользовательских настроек. (да, я использую его как константу, но пользователь может изменить его)
Теперь я хочу, чтобы пользователь мог предварительно просмотреть отчет перед его печатью. У меня есть отчет запускается в режиме ReportView. Это позволяет мне разместить кнопку «Печать» и кнопку «Закрыть» в заголовке отчета (которые не печатаются). Я настроил это так, потому что пользователь заблокирован от обычной «ленты» и других элементов управления, поэтому я должен предоставить кнопки. Кнопки не отображаются в режиме PrintPreview.
Очевидно, мне нужно выполнить это через VBA. Я не могу заставить работать настройки GroupLevel. Я пробовал функцию CreateGroupLevel безрезультатно. Пробовал с существующими группами и без существующих групп. Я попытался отказаться от идеи группы и просто попытался отсортировать подотчеты, используя свойство OrderBy, но ничего не работает. Я схожу с ума.
У кого-нибудь есть предложения ... кроме как сдаться? : -)
ОБНОВЛЕНИЕ:
Я пробовал функцию CreateGrouplevel перед открытием основного отчета. То есть откройте каждый вложенный отчет в режиме конструктора, добавьте группу, закройте подчиненную форму, а затем откройте основной отчет. Однако, когда я пытаюсь реализовать функцию CreateGroupLevel, я получаю ошибку:
Ошибка времени выполнения «2154»:
Эту функцию нельзя вызывать, когда открыта панель «Группа», «Сортировка» и «Всего».
Я не понимаю этого. Вот мой код:
DoCmd.OpenReport strReport, acViewDesign
intGroupLevel = CreateGroupLevel(strReport, "FluorescentDescription", True, False)
DoCmd.Close acReport, strReport
Мысли
OOOPS!
Хорошо, так что я обнаружил ошибку «2154». Действительно глупо, если вы когда-либо включали Группу, Сортировку, Общее окно во время редактирования отчета, он будет автоматически включаться каждый раз, когда вы входите в представление конструктора для этого отчета, пока вы физически не отключите его. Странный. Все еще теряю это.