Accéder aux rapports VBA - Imprimer, exporter, filtrer

Ce didacticiel Access VBA expliquera comment interagir avec Access Reports à l'aide de VBA.

Imprimer le rapport

Cette fonction VBA imprimera un rapport Access :

Fonction publique 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 : & MsgBox "Print & vbrCr Nombre & " : " & Err.Description Fin Fonction

Vous pouvez appeler la fonction comme ceci :

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

Notez que la fonction utilise la ligne de code suivante pour imprimer le rapport :

DoCmd.RunCommand acCmdPrint

après l'ouverture et la sélection du rapport (voir section suivante).

Ouvrir/Sélectionner le rapport

La fonction ci-dessus a utilisé DoCmd.OpenReport pour ouvrir le rapport :

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

Remarque : pour cet exemple, nous avons remplacé la variable Nom du rapport avec le nom du tableau « Rapport1 »

Ensuite, il sélectionne le rapport :

DoCmd.SelectObject acReport, "Report1"

Filtrer le rapport

Vous pouvez également filtrer un rapport en ouvrant le rapport avec des critères spécifiques :

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

Exporter le rapport vers Excel

Vous pouvez utiliser DoCmd.OutputTo pour exporter le rapport vers Excel :

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

Cette fonction VBA exportera un rapport vers Excel :

Fonction publique Export_Report(ReportName As String, FilePath As String) En cas d'erreur GoTo SubError DoCmd.OutputTo acOutputReport, ReportName, acFormatXLS, FilePath SubExit : Exit Function SubError : Call Export_Report("Report1", "c:\temp\ExportedReport.xls") Fonction de fin

La fonction enregistrera dans le FilePath entré, mais si aucun chemin de fichier n'est choisi, elle sera enregistrée dans le dossier Temp sur le lecteur C.

Vous pouvez appeler la fonction comme ceci :

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

Les sorties DoCmd.OutputTo dans un nouveau fichier. Au lieu de cela, vous pouvez sortir dans un fichier existant ou utiliser DoCmd.OutputTo pour sortir d'autres objets Excel. Vous pouvez en savoir plus dans notre article sur l'importation/l'exportation dans Access VBA.

wave wave wave wave wave