Microsoft Excel 宏转换为 PDF 时出现语法错误

Microsoft Excel 宏转换为 PDF 时出现语法错误
Sub invoicepdf()
Sheet2.Range("a1:j53").ExportAsFixedFormat xlTypePdf,Filename:="C:\Invoice data\" & Sheet2.Range("j12").Value, OpenAfterPublish:=true
End Sub

我在 Excel vb 中使用它来将 Excel 转换为 PDF,但看到语法错误。

有人可以帮我看看我哪里犯了错误吗?

答案1

尝试在 vb 脚本中将 Sheet2 替换为 Worksheets("Sheet2"):

Sub invoicepdf()
Worksheets("Sheet2").Range("a1:j53").ExportAsFixedFormat xlTypePdf,Filename:="C:\Invoice data\" & Worksheets("Sheet2").Range("j12").Value, OpenAfterPublish:=true
End Sub

还请检查单元格 J12 中是否存在与您指定的名称相同的目标文件,否则您的脚本将失败

答案2

您可以使用此宏将多个数据范围导出/转换为 PDF 文件。

Private Sub CommandButton1_Click()

 Worksheets("Sheet2").Activate

 Range("A82:D90,A92:E93,A96:C98").Select
 Selection.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
 "C:\temp\Book1.pdf", Quality:=xlQualityStandard, _
  IncludeDocProperties:=True, IgnorePrintAreas:=False, OpenAfterPublish:= _
  True

End Sub

笔记,

  1. 根据需要调整单元格引用。
  2. 文件路径和名称是可编辑的。

相关内容