Få åtkomst till VBA -rapporter - Skriv ut, exportera, filtrera

Denna VBA -handledning för Access kommer att diskutera hur du interagerar med åtkomstrapporter med VBA.

Skriv ut rapport

Denna VBA -funktion kommer att skriva ut en Access -rapport:

Public Function Print_Report (REPORT As String) On Error Goto Subfel DoCmd.OpenReport REPORT, acViewPreview,, acHiden DoCmd.SelectObject acReport, REPORT DoCmd.RunCommand acCmdPrint SubExit: Exit Function Subfel: MsgBox "Print_Report error:" & vbCrLf & Err. Number & ":" & Err.Description End Function

Du kan kalla funktionen så här:

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

Lägg märke till att funktionen använder följande kodrad för att skriva ut rapporten:

DoCmd.RunCommand acCmdPrint

efter att du öppnat och valt rapporten (se nästa avsnitt).

Öppna / välj rapport

Ovanstående funktion använde DoCmd.OpenReport för att öppna rapporten:

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

Obs! För detta exempel har vi ersatt variabeln Rapportnamn med tabellnamn “Rapport1”

Därefter väljer den rapporten:

DoCmd.SelectObject acReport, "Report1"

Filtrera rapport

Du kan också filtrera en rapport genom att öppna rapporten med specifika kriterier:

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

Exportera rapport till Excel

Du kan använda DoCmd.OutputTo för att mata ut rapporten till Excel:

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

Denna VBA -funktion exporterar en rapport till Excel:

Public Function 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: \ temp \ ExportR") Avsluta funktion

Funktionen sparas i den inmatade FilePath, men om ingen sökväg väljs sparas den i Temp -mappen på C -enheten.

Du kan kalla funktionen så här:

Privat under Export_Report_Example () Ring Export_Report ("Rpt1", "C: \ exempel \ report1.xls") Avsluta sub

DoCmd.OutputTo matas ut till en ny fil. Istället kan du mata ut till en befintlig fil eller använda DoCmd.OutputTo för att mata ut andra Excel -objekt. Du kan läsa mer i vår artikel om import / export i Access VBA.

wave wave wave wave wave