Excel als PDF exportieren
Aufbau
TCommonLibrary.ExcelExportAsPDF(AMachine:TatVirtualMachine); // (sExcelFileName, sPDFFileName, bIncludeDocProperties, bIgnorePrintArea, iPageFrom, iPageTo, bOpenAfterPublish)
Typ
Vorgehensweise
Beschreibung
Die Prozedur TCommonLibrary.ExcelExportAsPDF dient als Weiterleitung zur Methode ExportAsFixedFormat in der OLE-Automatisierung von Excel (Windows-Treiber). Das bedeutet, dass für die ordnungsgemäße Funktion dieses Vorgangs Excel auf dem Server installiert sein muss.
Wenn das Skript das Dokument über OLE öffnen kann (wie bei der Methode [Workbooks.Open (Excel) | Microsoft Learn](https://learn.microsoft.com/en-us/office/vba/api/excel.workbooks.open „https://learn.microsoft.com/en-us/office/vba/api/excel.workbooks.open“)), übergibt es alle Variablen an die Funktion ExportAsFixedFormat, wie hier dokumentiert: Worksheet.ExportAsFixedFormat-Methode (Excel) | Microsoft Learn
Der einzige fest codierte Parameter ist der zweite Quality-Parameter, der auf Standard (0) gesetzt ist.
Ein Blick hinter die Kulissen:
//Excel-Arbeitsmappe öffnen
try
ExcelWorkbook := ExcelApplication.Workbooks.Open(sExcelFileName);
//Referenz
//https://docs.microsoft.com/en-us/office/vba/api/excel.workbooks.open
except
ExcelWorkbook := Null;
bResult := False;
end;
If VarIsNull(ExcelWorkbook) = False then
begin
Try
ExcelWorkbook.ExportAsFixedFormat(0, sPDFFileName, 0, bIncludeDocProperties, bIgnorePrintArea, iPageFrom, iPageTo, bOpenAfterPublish, EmptyParam);
// Referenz
//https://learn.microsoft.com/en-us/office/vba/api/excel.worksheet.exportasfixedformat
Außer
bResult := False;
Ende;
Ende;