Распечатать отчет MS Access в.xps файл с помощью VBA

Я использую MS Access 2003 и у меня есть семь разных отчетов, которые я должен распространять каждое утро, и в настоящее время я делаю это вручную, печатая каждый из них в файл XPS. Принтер по умолчанию для каждого отчета был установлен в файл XPS, и я попробовал этот код:

DoCmd.OpenReport ("rptDaily_1of7")
DoCmd.PrintOut acPrintAll,1,,acHigh,1

Когда я использую это, он открывает окно Сохранить как, но.tif является единственным параметром в поле "Тип файла". Даже если это не так, в идеале я хотел бы отправить путь к файлу и имя в качестве параметра, чтобы он обрабатывал весь процесс (поэтому я могу использовать цикл для генерации всех семи файлов одним нажатием кнопки). Я надеюсь, что есть другая команда, которую я могу использовать для этого, или, возможно, другой метод. Обратите внимание, что это не моя машина, и у меня нет прав администратора для установки чего-либо еще (например, генератора PDF и т. Д.).

1 ответ

Решение

Вы можете создавать свои отчеты в виде файлов PDF, используя ReportToPDF Стивена Лебанса.

Это может быть легко автоматизировано (в загрузке есть MDB с примером кода), и вам не нужно ничего устанавливать.
Он поставляется с двумя библиотеками DLL, которые вам нужно поместить в ту же папку, что и ваш MDB/MDE, и все. Нет установки / регистрации DLL, просто распределите две библиотеки DLL с вашим MDB/MDE.

Мы используем это на работе для печати тысяч отчетов в день с Access 2003.

Другие вопросы по тегам