我正在使用以下代码将Excel 2010中的选定工作表导出到单个pdf文件中...
ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select ActiveSheet.ExportAsFixedFormat _ Type:=xlTypePDF, _ Filename:="C:\temp.pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=True
我的问题是它只导出第一张纸.有任何想法吗?
选择一组工作表后,可以使用" 选择"
考虑:
Sub luxation() ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select Selection.ExportAsFixedFormat _ Type:=xlTypePDF, _ Filename:="C:\TestFolder\temp.pdf", _ Quality:=xlQualityStandard, _ IncludeDocProperties:=True, _ IgnorePrintAreas:=False, _ OpenAfterPublish:=True End Sub
编辑#1:
进一步的测试表明,这种技术取决于每个工作表上选择的单元格组.要获得全面的输出,请使用以下内容:
Sub Macro1() Sheets("Sheet1").Activate ActiveSheet.UsedRange.Select Sheets("Sheet2").Activate ActiveSheet.UsedRange.Select Sheets("Sheet3").Activate ActiveSheet.UsedRange.Select ThisWorkbook.Sheets(Array("Sheet1", "Sheet2", "Sheet3")).Select Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ "C:\Users\James\Desktop\pdfmaker.pdf", Quality:=xlQualityStandard, _ IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _ True End Sub
我对此非常不满.我也在运行Excel 2010.我尝试使用以下方法将两张纸保存为单个PDF:
ThisWorkbook.Sheets(Array(1,2)).Select **Selection**.ExportAsFixedFormat xlTypePDF, FileName & ".pdf", , , False
但除了空白页面,我什么都没有.它保存了两张纸,但没有任何内容.直到我用过:
ThisWorkbook.Sheets(Array(1,2)).Select **ActiveSheet**.ExportAsFixedFormat xlTypePDF, FileName & ".pdf", , , False
我得到了一张带有两张纸的PDF文件.
我尝试使用"选项"对话框中的"选择"手动保存这两个页面,以保存我选择的两张纸,但得到了空白页.当我尝试Active Sheet(s)选项时,我得到了我想要的东西.当我将其记录为宏时,Excel在成功发布PDF时使用了ActiveSheet.是什么赋予了?