Как добавить кнопку в отчет Access, чтобы экспортировать ее в Excel / PDF? - PullRequest
5 голосов
/ 16 ноября 2009

Как добавить кнопку в отчет Microsoft Access для ее экспорта в Excel / PDF?

Ответы [ 4 ]

5 голосов
/ 07 октября 2014

Я только что скомбинировал некоторые из предыдущих ответов, и это мой последний блок кода, который экспортирует отчет в Excel и затем открывает указанный файл Excel.

Private Sub Command79_Click()
'initialize variables
Dim strReportName As String
Dim strPathUser As String
Dim strFilePath As String

'set variables
strReportName = "AlarmLetterForSF"
strPathUser = Environ$("USERPROFILE") & "\my documents\"
strFilePath = strPathUser & strReportName & Format(Date, "yyyymmdd") & ".xls"

'export to excel
DoCmd.OutputTo acOutputReport, strReportName, acFormatXLS, strFilePath

'launch excel file
Dim Shex As Object
Set Shex = CreateObject("Shell.Application")
Shex.Open (strFilePath)
End Sub
3 голосов
/ 17 ноября 2009

Модули: образец Excel Automation - ячейка за ячейкой, которая медленно

Модули: перенос записей в Excel с помощью автоматизации

Обратите внимание, что предложенная автоматизация Excel на самом деле не соответствует запросу, поскольку экспорт отчетов в Excel делает их крайне безобразными. Если я правильно помню, эта функция была удалена в Access 2007.

A2000ReportToPDF - это база данных Access 2000, содержащая функцию для преобразования файлов отчетов и моментальных снимков в документы PDF. Драйвер принтера PDF не требуется. Свободно.

2 голосов
/ 17 ноября 2009

Кристиан предложил командную кнопку в форме, но вы также можете создать панель инструментов для отчета с кнопкой для экспорта отчета в Excel. Но, как говорит Тони, результаты будут ужасными.

Я бы сказал, что более полезной была бы кнопка, которая экспортирует данные, отображаемые в отчете, в электронную таблицу Excel. Форматирование не будет таким красивым, но будет гораздо более полезным и управляемым. Для этого вы должны использовать DoCmd.TransferSpreadsheet и сохраненный запрос в качестве источника экспорта (эквивалент источника записей отчета).

1 голос
/ 17 ноября 2009

AFAIK, вы не можете "добавить" его в отчет. Но в форму, которая открывает отчет, вы можете добавить кнопку со следующим кодом:

DoCmd.OutputTo acOutputReport, "ReportName", acFormatXLS,
"c:\YourFolderName\ReportName - " & Format(Date, "yyyymmdd") & ".xls"

Только Access 2007 поддерживает PDF . Поэтому вам нужно будет либо установить PDF-принтер, либо воспользоваться предложением Tony Toews

...