Acessar relatórios VBA - imprimir, exportar, filtrar

Este Tutorial do VBA do Access discutirá como interagir com os Relatórios do Access usando o VBA.

Relatório de impressão

Esta função VBA imprimirá um relatório de acesso:

Função pública Print_Report (ReportName As String) Em Erro GoTo SubError DoCmd.OpenReport ReportName, acViewPreview,,,, acHiden DoCmd.SelectObject acReport, ReportName DoCmd.RunCommand acCmdPrint SubExit: Exit Function SubError: MsgbreBox "& Erro Print_ReBox" & Número & ":" & Err.Description End Function

Você pode chamar a função assim:

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

Observe que a função usa a seguinte linha de código para imprimir o relatório:

DoCmd.RunCommand acCmdPrint

após abrir e selecionar o relatório (consulte a próxima seção).

Abrir / selecionar relatório

A função acima usou DoCmd.OpenReport para abrir o relatório:

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

Nota: para este exemplo, substituímos a variável ReportName com nome de mesa “Report1”

Em seguida, ele seleciona o relatório:

DoCmd.SelectObject acReport, "Report1"

Relatório de Filtro

Você também pode filtrar um relatório abrindo o relatório com critérios específicos:

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

Exportar relatório para Excel

Você pode usar DoCmd.OutputTo para gerar o relatório no Excel:

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

Esta função VBA exportará um relatório para o Excel:

Função pública 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 \ ExportedReport.xls") Função Final

A função será salva no FilePath inserido, mas se nenhum caminho de arquivo for escolhido, ela será salva na pasta Temp na unidade C.

Você pode chamar a função assim:

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

O DoCmd.OutputTo gera a saída para um novo arquivo. Em vez disso, você pode gerar a saída para um arquivo existente ou usar DoCmd.OutputTo para gerar outros objetos do Excel. Você pode aprender mais em nosso artigo sobre Importação / Exportação no Access VBA.

Você vai ajudar o desenvolvimento do site, compartilhando a página com seus amigos

wave wave wave wave wave