W tym samouczku Access VBA omówiono sposób interakcji z raportami dostępu przy użyciu języka VBA.
Raport druku
Ta funkcja VBA wydrukuje raport dostępu:
Funkcja publiczna Print_Report(ReportName As String) W przypadku błędu Przejdź do podbłądu DoCmd.OpenReport ReportName, acViewPreview, , , , acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint Podwyjście: Funkcja wyjścia PodError "_ & v. MsgrLfBox Numer & '': '' i błąd.Opis Funkcja zakończenia
Możesz wywołać funkcję w ten sposób:
Private Sub Print_Report_Example() Wywołaj Print_Report("Raport1") Zakończ Sub
Zauważ, że funkcja używa następującego wiersza kodu do wydrukowania raportu:
DoCmd.RunCommand acCmdPrint
po otwarciu i wybraniu raportu (patrz następny rozdział).
Otwórz / wybierz raport
Powyższa funkcja wykorzystała DoCmd.OpenReport do otwarcia raportu:
DoCmd.OpenReport "Report1", acViewPreview, , , , acHiden
Uwaga: w tym przykładzie zastąpiliśmy zmienną Nazwa raportu z nazwą tabeli „Raport1”
Następnie wybiera raport:
DoCmd.SelectObject acReport, „Report1”
Filtruj raport
Możesz także przefiltrować raport, otwierając raport z określonymi kryteriami:
DoCmd.OpenReport "Report1", acViewPreview, "num=0"
Eksportuj raport do Excela
Możesz użyć DoCmd.OutputTo, aby wyprowadzić raport do programu Excel:
DoCmd.OutputTo acOutputReport, "Rpt1", acFormatXLS, "C:\examples\report1.xls"
Ta funkcja VBA wyeksportuje raport do Excela:
Funkcja publiczna Export_Report(ReportName As String, FilePath As String) w przypadku błędu GoTo SubError DoCmd.OutputTo acOutputReport, ReportName, acFormatXLS, FilePath SubExit: Zakończ funkcję SubError: Wywołaj Export_Report("Report1", "c:\temp\ExportedReport.xls") Koniec funkcji
Funkcja zapisze do wprowadzonej ścieżki FilePath, ale jeśli nie zostanie wybrana ścieżka do pliku, zapisze się w folderze Temp na dysku C.
Możesz wywołać funkcję w ten sposób:
Private Sub Export_Report_Example() Wywołanie Export_Report("Rpt1", "C:\examples\report1.xls") End Sub
DoCmd.OutputTo wyprowadza do nowego pliku. Zamiast tego możesz wyprowadzać dane do istniejącego pliku lub użyć DoCmd.OutputTo, aby wyprowadzić inne obiekty programu Excel. Więcej informacji można znaleźć w naszym artykule na temat importowania/eksportowania w programie Access VBA.