Автоматически отправлять отчеты по электронной почте из Access
Мне нужно автоматически отправлять отчеты по электронной почте из Access в определенное время
У меня действительно нет большого опыта создания макросов в Access, но я попытался создать макрос, который автоматически отправит электронное письмо в определенное время. Вот как это выглядит до сих пор:
if [time] = "12:00:00 AM" then
emaildatabaseobject
Object Type Report
Object Name NameofReport
Output Format PDF
To desiredemail@email.com
CC
BCC
Subject test
1 ответ
Я бы лично предложил использовать макрос MS Access для выполнения только операций электронной почты (либо с помощью EmailDatabaseObject
действие, SendObject
метод DoCmd
объект в VBA или путем автоматизации установленного почтового клиента с использованием ActiveX в VBA).
Затем вы можете использовать планировщик заданий Windows для вызова макроса MS Access в указанное время или по заданному расписанию.
Чтобы создать запланированную задачу для вызова макроса MS Access, выполните следующие действия:
- Откройте планировщик заданий в Windows либо через меню "Пуск", либо запустив
taskschd.msc
- Выберите библиотеку планировщика заданий в левой панели (или создайте собственную папку под ней)
- На правой панели " Действия" выберите " Создать задачу".
- Заполните очевидные параметры, такие как Имя, Описание и т. Д. В зависимости от ситуации.
- Добавьте триггер на основе времени / расписания, в которое вы хотите запустить макрос.
- Добавить действие и выбрать Запустить программу
- Перейдите к местоположению и выберите
MSACCESS.exe
исполняемый файл. В поле " Добавить аргументы" укажите путь к вашей базе данных (заключенный в двойные кавычки, если путь содержит пробелы), а затем
/x
переключатель командной строки и имя вашего макроса, например:"C:\Your Folder\Your Database.accdb" /x YourMacro
Или, если у вас есть SubMacro в макросе:
"C:\Your Folder\Your Database.accdb" /x YourMacro.YourSubMacro
Вы можете узнать больше о доступных параметрах командной строки для MS Access здесь.