使用“保存位置”对话框将Excel工作表另存为单独的PDF

时间:2014-11-04 12:30:04

标签: excel vba excel-vba pdf

我有一个包含相当多工作表的Excel文件(最终要添加更多工作表)。目前,我已经进入每张纸并将它们单独保存为PDF。

我想知道是否有一个vba宏可以将文件中的每个工作表另存为单独的PDF。

我希望用户可以选择将文件保存到他或她选择的目录中,我认为这对于浏览对话框来说是最简单的。 PDF将以工作表名称后缀"命名。 - 一些文字"。

如果可以的话,我会将宏分配给一个按钮,其中包含一个' splash'我已经有几个宏按钮存在的页面。

此外,是否有任何方法可以排除' splash'保存为PDF的页面?

非常感谢。 曼塔斯

1 个答案:

答案 0 :(得分:1)

如果启动页面是第1号纸张,那么这将起作用:

Sub SaveOutput()
folderChoice = setupFolders()
ChDir (folderChoice)
For i = 2 To Sheets.Count                          'if the splash screen is Sheet 1 it won't be saved.
    Worksheets(i).Select
    Call exportSheet(Sheets(i).Name & " - Some Text")
Next i
End Sub
Function setupFolders()
    MsgBox ("Navigate to output directory...")
    With Application.FileDialog(msoFileDialogFolderPicker)
        .AllowMultiSelect = False
        If .Show = 0 Then
            End
        End If
        FolderName = .SelectedItems(1)
    End With
    setupFolders = FolderName
End Function
Sub exportSheet(outputName)
ActiveSheet.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=outputName & ".pdf"
End Sub