Доступ к отчетам VBA - печать, экспорт, фильтр

В этом руководстве по Access VBA будет рассказано, как взаимодействовать с отчетами Access с помощью VBA.

Распечатать отчет

Эта функция VBA распечатает отчет о доступе:

Открытая функция Print_Report (ReportName As String) При ошибке GoTo SubError DoCmd.OpenReport ReportName, acViewPreview,,,, acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint SubExit: Exit Function SubErrorL: Msgreb. Число & ":" & Err. Описание Конец Функция

Вы можете вызвать функцию так:

Частная подписка Print_Report_Example () Вызов Print_Report ("Report1") End Sub

Обратите внимание, что функция использует следующую строку кода для печати отчета:

DoCmd.RunCommand acCmdPrint

после открытия и выбора отчета (см. следующий раздел).

Открыть / Выбрать отчет

Вышеупомянутая функция использовала DoCmd.OpenReport для открытия отчета:

DoCmd.OpenReport "Report1", acViewPreview,,,, acHiden

Примечание. В этом примере мы заменили переменную ReportName с именем таблицы «Отчет1»

Затем он выбирает отчет:

DoCmd.SelectObject acReport, "Report1"

Отфильтровать отчет

Вы также можете отфильтровать отчет, открыв отчет с определенными критериями:

DoCmd.OpenReport "Report1", acViewPreview,, "num = 0"

Экспорт отчета в Excel

Вы можете использовать DoCmd.OutputTo для вывода отчета в Excel:

DoCmd.OutputTo acOutputReport, «Rpt1», acFormatXLS, «C: \ examples \ report1.xls»

Эта функция VBA экспортирует отчет в Excel:

Открытая функция Export_Report (ReportName As String, FilePath As String) On Error GoTo SubError DoCmd.OutputTo acOutputReport, ReportName, acFormatXLS, FilePath SubExit: Exit Function SubError: Call Export_Report («Report1», «c: \ templs \ ExportedReport.x Конечная функция

Функция сохранит файл во введенный путь к файлу, но если путь к файлу не выбран, он будет сохранен во временную папку на диске C.

Вы можете вызвать функцию так:

Частная подпрограмма Export_Report_Example () Вызов Export_Report ("Rpt1", "C: \ examples \ report1.xls") End Sub

DoCmd.OutputTo выводит в новый файл. Вместо этого вы можете выводить данные в существующий файл или использовать DoCmd.OutputTo для вывода других объектов Excel. Вы можете узнать больше в нашей статье об импорте / экспорте в Access VBA.

wave wave wave wave wave