Toegang tot VBA-rapporten - afdrukken, exporteren, filteren

In deze Access VBA-zelfstudie wordt besproken hoe u met Access Reports kunt communiceren via VBA.

Rapport afdrukken

Deze VBA-functie drukt een toegangsrapport af:

Public Function Print_Report(ReportName As String) On Error GoTo SubError DoCmd.OpenReport ReportName, acViewPreview, , , , acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint SubExit: Exit Function SubError: &Report_MsgBox: " Nummer & ": " & Err.Beschrijving Eindfunctie

Je kunt de functie als volgt aanroepen:

Private Sub Print_Report_Example() Bel Print_Report("Report1") End Sub

Merk op dat de functie de volgende regel code gebruikt om het rapport af te drukken:

DoCmd.RunCommand acCmdPrint

na het openen en selecteren van het rapport (zie volgende sectie).

Rapport openen / selecteren

De bovenstaande functie gebruikte DoCmd.OpenReport om het rapport te openen:

DoCmd.OpenReport "Rapport1", acViewPreview, , , , acHiden

Opmerking: voor dit voorbeeld hebben we de variabele vervangen Rapportnaam met tabelnaam “Rapport1”

Vervolgens selecteert het het rapport:

DoCmd.SelectObject acReport, "Rapport1"

Rapport filteren

U kunt een rapport ook filteren door het rapport met specifieke criteria te openen:

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

Rapport exporteren naar Excel

U kunt de DoCmd.OutputTo gebruiken om het rapport naar Excel uit te voeren:

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

Deze VBA-functie exporteert een rapport naar Excel:

Openbare functie Export_Report (ReportName As String, FilePath As String) Bij fout GoTo SubError DoCmd.OutputTo acOutputReport, ReportName, acFormatXLS, FilePath SubExit: Exit Function SubError: Call Export_Report("Report1", "c:\temp\ExportedReport.xls") Functie beëindigen

De functie wordt opgeslagen in het ingevoerde FilePath, maar als er geen bestandspad is gekozen, wordt deze opgeslagen in de Temp-map op de C-schijf.

Je kunt de functie als volgt aanroepen:

Private Sub Export_Report_Example() Roep Export_Report("Rpt1", "C:\examples\report1.xls") End Sub

De DoCmd.OutputTo wordt uitgevoerd naar een nieuw bestand. In plaats daarvan kunt u uitvoeren naar een bestaand bestand of DoCmd.OutputTo gebruiken om andere Excel-objecten uit te voeren. U kunt meer leren in ons artikel over importeren / exporteren in Access VBA.

wave wave wave wave wave