在office 2010以上版本集成了pdf转换插件(2007需要装个SaveAsPDFandXPS.exe),转换非常方便。示例代码如下:

uses comobj;

var
MsExcel, MsExcelWorkBook, MsExcelWorkSheet: Variant;
begin
MsExcel := CreateOleObject('Excel.Application');
MsExcelWorkBook := MsExcel.Workbooks.Open('C:\Users\admin\Desktop\111.xlsx');
MsExcel.WorkSheets[1].Activate;
MsExcelWorkSheet := MsExcel.Worksheets.Item[1];
MsExcelWorkSheet.saveas('C:\Users\admin\Desktop\111.pdf',57);
MsExcelWorkBook.close;
end;

说明:其中“MsExcelWorkSheet.saveas('C:\Users\admin\Desktop\111.pdf',57);”中的57代表转换格式为xlPDF。

如果是2003及以下版,可通过PDF虚拟打印机打印方式生成PDF文档。如:
ExcelApp.ActivePrinter :='Microsoft Print to PDF';
ExcelApp.ActiveSheet.PrintOut;