使用VBA

时间:2018-07-24 03:07:14

标签: excel vba pdf

我很困惑,我一直在研究许多不同的解决方案,并且不断出错。

目标:我有一本工作簿,其中包含许多单独的表格。我需要其中两张纸作为两个单独的PDF保存在我的系统中。这些工作表是每日退货,并将每天更新。话虽如此,如果PDF覆盖前一天的PDF,我可以。

问题:我尝试了许多不同的代码变体,但似乎无法正确完成。

这里是我尝试过的方法的链接。我不会输入任何示例代码,因为我尝试了许多不同的示例代码,并且觉得自己不熟悉任何一个。

链接到我尝试过的解决方案:

https://www.youtube.com/watch?v=zBFVm14biFI

http://www.contextures.com/excelvbapdf.html

VBA Print to PDF and Save with Automatic File Name

https://www.thespreadsheetguru.com/the-code-vault/vba-to-quickly-create-a-pdf-document-from-selected-excel-worksheets

https://exceloffthegrid.com/vba-code-save-excel-file-as-pdf/

非常感谢您。

1 个答案:

答案 0 :(得分:2)

尝试一下:

Sub ExportAsPDF()

Dim Worksheet1 As Worksheet
Dim Worksheet2 As Worksheet
Dim Worksheet1_Name As String
Dim Worksheet2_Name As String

Worksheet1_Name = "Sheet1" ' Replace this with the name of the first sheet you want to export
Worksheet2_Name = "Sheet2" ' Replace this with the name of the second sheet you want to export
Set Worksheet1 = ThisWorkbook.Worksheets(Worksheet1_Name)
Set Worksheet2 = ThisWorkbook.Worksheets(Worksheet2_Name)

Dim Write_Directory As String
Dim Worksheet1_Path As String
Dim Worksheet2_Path As String

Write_Directory = "C:\Users\YOUR_USERNAME\Documents" ' Replace this with the full path of the directory you want to save to
Worksheet1_Path = Write_Directory & "\" & Worksheet1_Name
Worksheet2_Path = Write_Directory & "\" & Worksheet2_Name

Worksheet1.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=Worksheet1_Path, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

Worksheet2.ExportAsFixedFormat _
    Type:=xlTypePDF, _
    Filename:=Worksheet2_Path, _
    Quality:=xlQualityStandard, _
    IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, _
    OpenAfterPublish:=False

Application.StatusBar = "Exported " & Worksheet1_Name & " & " & Worksheet2_Name & " to PDF!"

End Sub