Достъп до VBA отчети - Печат, Експорт, Филтър

Този урок за VBA на Access ще обсъди как да взаимодействате с отчетите за достъп, използвайки VBA.

Печат на отчета

Тази функция VBA ще отпечата отчет за достъп:

Публична функция Print_Report (ReportName As String) При грешка GoTo SubError DoCmd.OpenReport ReportName, acViewPreview,,,, acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint SubExR: Номер & ":" & Грешка. Описание на крайната функция

Можете да извикате функцията по следния начин:

Private Sub 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) При грешка GoTo SubError DoCmd.OutputTo acOutputReport, ReportName, acFormatXLS, FilePath SubExit: Изход Функция SubError: Call Export_Report ("Report1". "X Крайна функция

Функцията ще запише във въведения FilePath, но ако не е избран път към файла, тя ще бъде записана в папката Temp на C устройството.

Можете да извикате функцията по следния начин:

Частен под Export_Report_Example () Извикване Export_Report ("Rpt1", "C: \ examples \ report1.xls") Краен под

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

wave wave wave wave wave