我有一个非常详细且公式繁多的工作簿模板,我每天都会用到它。我最初是在 Excel 2010 中创建的。
我创建了几个宏按钮,可以将工作簿目录中的某些工作表保存为 PDF。
由于某种原因,当我升级到 2013 时,PDF 的宏才有效,如果我手动将 1 张表保存为 PDF,我并没有自己编写宏,而是从某处修改了复制粘贴。
下面是其中一个宏的示例:
Sub PDF_3P()
ThisWorkbook.Sheets(Array("CD 1", "CD 2", "CD 3")).Select
pdfName = ActiveSheet.Name
ChDir ActiveWorkbook.Path & "\"
fileSaveName = ActiveWorkbook.Name
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:= _
fileSaveName _
, Quality:=xlQualityStandard, IncludeDocProperties:=True, IgnorePrintAreas _
:=False, OpenAfterPublish:=False
MsgBox "File Saved " & " " & fileSaveName
End Sub
答案1
这对我适用于 Office 2013
Option Explicit
Sub PDF_3P()
Dim FileSaveName As String
ThisWorkbook.Worksheets(Array("CD 1", "CD 2", "CD 3")).Select
FileSaveName = ActiveWorkbook.Path & "\" & ThisWorkbook.Name
If FileSaveName <> "False" Then
With ActiveSheet
.ExportAsFixedFormat _
Type:=xlTypePDF, _
FileName:= _
FileSaveName, _
Quality:=xlQualityStandard, _
IncludeDocProperties:=True, _
IgnorePrintAreas:=False, _
OpenAfterPublish:=False
End With
End If
End Sub