VBA Excel-将文档另存为文件名已修改的PDF

问题描述 投票:0回答:1

早上好,

我正在尝试将Excel文件另存为PDF,但具有自定义文件名。老实说,我只会将名称的pepe加到Excel文件中提示的文件名中。

根据此处的查询:

Save excel as PDF in current folder using current workbook name

Save excel as PDF in current folder using current workbook name

我的代码如下:

  Sub DPPtoPDF()

  ThisWorkbook.Sheets.Select

   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
   ThisWorkbook.Path & "\" & ThisWorkbook.Name, _
   Quality:=xlQualityStandard, IncludeDocProperties:=True, _
   IgnorePrintAreas:=False, OpenAfterPublish:=True

   Sheets("Frontsheet").Select

   End Sub

因此我们从此代码中了解,将按照Excel文件名接收PDF文件名。

我正在尝试这样的事情:

   ThisWorkbook.Sheets.Select

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= &fName $ "-Route-Aprooval.pdf" _
    ThisWorkbook.Path & "\" & ThisWorkbook.Name, _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, OpenAfterPublish:=True

但是我在下图中遇到错误。总的来说,我可以看到,因为我的代码变成了红色。

解决方案:

ThisWorkbook.Sheets.Select

    ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _ 
    " &fName $ "-Route-Aprooval.pdf""
    ThisWorkbook.Path & "\" & ThisWorkbook.Name, _
    Quality:=xlQualityStandard, IncludeDocProperties:=True, _
    IgnorePrintAreas:=False, OpenAfterPublish:=True

也不起作用。老实说[Filename:=后面的任何代码都会破坏整个代码。

您知道我应该将新的输出文件名大致放在哪里吗?我想保留与Excel中相同的名称,但只在破折号后添加名称的另一部分(如上图所示)。有可能吗?

enter image description here

excel excel-vba pdf
1个回答
0
投票

尝试下面的代码。

Sub DPPtoPDF()
  Dim Custom_Name as string
  ThisWorkbook.Sheets.Select

  Custom_Name= ThisWorkbook.Name & "-route approval" & ".pdf"

   ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
   ThisWorkbook.Path & "\" & Custom_Name, _
   Quality:=xlQualityStandard, IncludeDocProperties:=True, _
   IgnorePrintAreas:=False, OpenAfterPublish:=True

   Sheets("Frontsheet").Select

   End Sub
© www.soinside.com 2019 - 2024. All rights reserved.