如何在Excel VBA中将每个工作表的首页另存为PDF

怀特纳

我有一个保存pdf按钮,它将保存Sheet1和Sheet2上的所有页面。现在的问题是,我无法获得仅保存每个工作表的第一页而不保存每个工作表的第1、2和3页的VBA代码。

我创建了一个“另存为PDF”按钮,该按钮将保存Sheet1和Sheet2,但是它将在每个工作表上打印所有页面。我只需要为每个工作表保存第一页。

Private Sub PrintAllInvoices()

    Dim FolderPath As String

    FolderPath = "C:\Users\MyComputer\Desktop\PDFs"

    MkDir FolderPath

        Sheets(Array("Sheet1", "Sheet2")).Select
        ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=FolderPath & "\Sales", _
        OpenAfterPublish:=False, IgnorePrintAreas:=False, From:=1, To:=1

    MsgBox "All PDF's have been successfully exported."

End Sub

我希望如此,因此在保存PDF时将保存Sheet1(第1页)和Sheet2(第1页)。我只希望保存每个工作表的第一页。

托尼·M

尝试此操作,替换dir为您自己的文件路径。只要您对该路径具有写访问权,在运行宏之后,对于其中的每张工作表,您都应该看到一页的pdf文件。一旦适合您,请根据需要进行修改。

Option Explicit
Sub pdfSavePage()
    Dim sh as worksheet
    Const dir = "C:\Users\Tony\Documents"
    ChDir dir
    For each sh in ThisWorkbook.worksheets
       sh.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
        dir & "\" & sh.Name & ".pdf", Quality:=xlQualityStandard, _
        IncludeDocProperties:=True, IgnorePrintAreas:=False, From:=1, To:=1, _
       OpenAfterPublish:=False
    next sh
End Sub

如果要将所有这些pdf合并到一个文档中,则只需在Mac OS中使用该Preview程序,只需将它们拖动到第一个文档的侧边栏区域即可轻松完成毫无疑问,还有其他程序可以在您的OS中执行相同的操作。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章