Export Excel workbook as a pdf in .NET
By Miguel Santos
This FAQ provides code to save Excel workbook as a pdf programmatically. This code is useful for any VSTO or Excel automation implementation.
Here is the source code in C#
public void ExportWorkbook(Excel.Application app, string pathToExport)
{
Excel.Workbook
lActiveBook = app.ActiveWorkbook;
lActiveBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,
pathToExport,
Excel.XlFixedFormatQuality.xlQualityStandard,
Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing, Type.Missing);
}
Here
is the source code in VB.NET
Private Sub ExportWorkbook(ByVal app As Excel.Application, ByVal pathToExport As String)
Dim lActiveBook As Excel.Workbook = app.ActiveWorkbook
lActiveBook.ExportAsFixedFormat(Excel.XlFixedFormatType.xlTypePDF,
pathToExport, Excel.XlFixedFormatQuality.xlQualityStandard)
End Sub
You can use this code in any Excel automation such as VSTO Add-In
or workbook.
Note: Notice that the above code saves normal pdf.
If you require PDF/A format, you need to change the following registry key:
HKEY_CURRENT_USER\Software\Microsoft\Office\12.0\Common\FixedFormat\
DWORD -
LastISO19005-1
or change the Excel 2007 Options to ISO19005-1 compliant
PDF/A when saving a pdf the first time so that subsequent save operations will
use the same option.
Export Excel workbook as a pdf in .NET (1715 Views)