通过VBA将MS Excel 2003工作簿导出为PDF

我有一个Excel 2003工作簿,其中包含一个macros将其工作簿的某些表复制到一个新的工作簿,然后保存并closures新的工作簿。 它做了几十次,每次都有不同的纸张select。

我想向macros添加额外的步骤来将辅助工作簿的电子表格导出为PDF。 这样做的最明显的方法是使用PDF打印机和Excel内置的“打印”function,但大多数PDF打印机在完成之前会给您一个“另存为…”(Save As …)对话框。 显然,单独input七十七个场合缺乏吸引力 – 所以我希望能够提前设置它(可能是“使用我打印的文件的文件名减去其扩展名”),然后select默认选项。

任何想法的免费PDF打印机,这样做? 还是一个合适的select?

Office 2007允许这样做。 我发现PDFCreator很好,VBA包含在示例文件中,并且已经听说CutePDF也很好。 PDFCreator和CutePDF是免费的。

作为Remou (明智的)回答的一个发展,因为这也帮助我解决了我的问题。

我selectpdfcreator (因为我已经安装了),这就是我最终使用的:

Sub PDF_Print() Dim pp = ActivePrinter ActivePrinter = "PDFCreator" ActiveDocument.PrintOut ActivePrinter = p End Sub 

奇迹般有效

这可能有助于: http : //www.pdf995.com

一个function是“三个自动命名选项绕过另存为对话框”