У цьому підручнику Access VBA буде обговорено, як взаємодіяти зі звітами Access за допомогою VBA.
Роздрукувати звіт
Ця функція VBA надрукує звіт про доступ:
Загальнодоступна функція Print_Report (ReportName As String) On Error GoTo SubError DoCmd.OpenReport ReportName, acViewPreview,,,, acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint SubExR: Exit: "Exr. Exr." Number & ":" & Err.Опис Функція завершення
Викликати функцію можна так:
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: Виклик Export_Report ("Report1" Функція завершення
Функція зберігатиметься у введеному FilePath, але якщо шлях до файлу не вибрано, вона збережеться у папці Temp на диску C.
Викликати функцію можна так:
Приватний підрозділ Export_Report_Example () Виклик Export_Report ("Rpt1", "C: \ examples \ report1.xls") Кінець Sub
Функція DoCmd.OutputTo виводить дані до нового файлу. Замість цього ви можете виводити дані до існуючого файлу або використовувати DoCmd.OutputTo для виведення інших об’єктів Excel. Ви можете дізнатися більше в нашій статті про імпорт / експорт у Access VBA.