команда send-object не отправлять, если в запросе нет записей - PullRequest
0 голосов
/ 15 июля 2010

Я хочу использовать макрос «команда send-object» для ежедневной отправки по электронной почте записей группы запросов, но я хочу, чтобы он отправлял данное письмо только при наличии записей в данном запросе. если запрос не выводит никаких записей, то я не хочу, чтобы это письмо отправлялось. Я знаю, как этого добиться, используя отчет Acces, установив «событие без данных», но я бы предпочел, чтобы мой макрос запускал отчеты Access и просто выполнял запросы, потому что вывод данных в формате reoprt использует много ресурсов на моем компьютере. пожалуйста, обратите внимание, что я не знаю VBA, поэтому я хотел бы знать, смогу ли я достичь своей цели без какого-либо программирования на VB. большое спасибо за ваш совет

Ответы [ 2 ]

1 голос
/ 16 июля 2010

В макросе вы можете использовать столбец CONDITIONS, чтобы проверить выражение DCount (), чтобы увидеть, если результаты> 0, и тогда ваш SendObject запустится.

Для этого откройте свой макрос с помощью строки SendObject.

В меню ПРОСМОТР выберите УСЛОВИЯ. Это добавит столбец слева.

В эту колонку поместите что-то вроде этого:

  DCount("*", "MyQuery", "[conditions that are being tested, if necessary]")>0

Это DCount (), чтобы увидеть, сколько записей возвращает запрос. Вы бы оставили третий аргумент (вместе с его ведущей запятой), если ваш запрос уже соответствующим образом отфильтрован (например, в качестве критерия имеется ссылка на элемент управления формы). Если запрос возвращает 0, СОСТОЯНИЕ возвращает ЛОЖЬ, и ваша команда SendObject не будет выполнена.

Вам необходимо выяснить, как создать DCount (), но дело в том, что, проверяя, сколько записей будет отображаться в запросе, вы можете условно выполнить SendObject.

0 голосов
/ 15 июля 2010

К сожалению, вам нужен VBA для этого.Вы готовы вставить какой-нибудь код?

...