Отчет MSACCESS — Показать или Скрыть «Группу по заголовку»

#ms-access #report

Вопрос:

Цель — В отчете есть расчетные поля в ЗАГОЛОВКЕ ГРУППЫ по перестраховщику

Цель состоит в том, чтобы напечатать этот заголовок только в том случае, если существует БОЛЕЕ ОДНОГО «имя_детали».

По данным, у Коринн есть 2 дилера. Поэтому я хочу распечатать ЗАГОЛОВОК ГРУППЫ на Перестраховщике

У Адама есть 1 дилер. Поэтому не печатайте заголовок Группы на Перестраховщике

Следовательно, какой код входит в событие «On Format» этого заголовка?

Вот ссылка на jpg данных — Просмотр набора данных

Комментарии:

1. Нужно подсчитать количество дилеров, связанных с перестраховщиком. Можно использовать выражение DCount() в элементе управления текстовым полем. Затем код проверит это текстовое поле: Me.GroupHeader0.Visible = Me.tbxCount > 1 или DCount() может быть в VBA вместо ссылки Me.tbxCount.

2. Я смог реализовать ваше предложение. Однако функция DCount() возвращает число, равное общему количеству строк во всем наборе данных. Мне нужно количество РАЗЛИЧНЫХ имен дилеров в этой группе в разделе. В наборе данных есть строка для каждого подписанного контракта. У дилера может быть 1 продажа или несколько. Поэтому количество строк в этом случае не будет работать.

3. Поэтому вам нужно создать запрос, который объединяет имена дилеров по группам. SELECT DISTINCT Dealer, Reinsurer FROM table; . Обратитесь к этому запросу в учетной записи постоянного счета для получения количества дилеров на одного перестраховщика.

Ответ №1:

Два приведенных выше предложения решили эту проблему. Спасибо!

Я решил эту проблему, создав запрос на создание таблицы с предложением select distinct. Затем я сослался на эту новую таблицу в функции DCount. Это работает. Как только у меня будет время, я бы предпочел использовать массив, чтобы свести к минимуму используемые ресурсы для создания отчетов. Кстати, я создал таблицу против запрос, так как счетчик постоянного тока будет вызываться около 600 раз.