macros导出某些Excel表单以分开PDF

我有一个macros导出工作簿中的某些工作表来分隔PDF(用于报告的目的)。 它适用于我在一个工作簿,但是,在不同的工作簿,它是出口所有表。 我无法弄清楚我哪里错了。 为了使事情变得更容易,我为了自己的目的将它们定制为了自己定制的地方。

任何想法,我出错了? 提前致谢。

Sub ExportToPDFs() ' PDF Export Macro ' C:\ *location* ' Sheets(Array("*selected sheets*")).Select Dim nm As String Dim ws As Worksheet For Each ws In Worksheets ws.Select nm = ws.Name ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\*location*" & "*Report Title*" & nm & Range("D8").Value & ".pdf", _ Quality:=xlQualityStandard, IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=True Next ws End Sub 

您需要使用要导出的工作表的名称填充数组sheets_to_select 。 否则,这将为你工作。

 Sub ExportToPDFs() ' PDF Export Macro ' C:\ *location* ' Sheets(Array("*selected sheets*")).Select Dim nm As String Dim ws As Worksheet Dim i as Variant, sheets_to_select as Variant sheets_to_select = Array("Sheet1","Sheet2","Sheet3") For Each i in sheets_to_select Thisworkbook.Sheets(i).ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\*location*" & "*Report Title*" & i & Thisworkbook.Sheets("*The sheet you need the value of D8 from").Range("D8").Value & ".pdf", _ Quality:=xlQualityStandard, IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=True Next i End Sub 

好问题! 我认为这应该做你想做的…只是修改脚本,以满足您的需求…

 Sub ExportToPDFs() Dim ws As Worksheet For Each ws In Worksheets ws.Select nm = ws.Name ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, _ Filename:="C:\your_path_here\" & nm & ".pdf", _ Quality:=xlQualityStandard, IncludeDocProperties:=True, _ IgnorePrintAreas:=False, OpenAfterPublish:=False Next ws End Sub