我有一张包含多张纸的工作簿。有些工作表有超过1页,所以我在页脚Page &[Page] of &[Pages]
中有以下内容来显示每个工作表中的页数。
然后我使用以下代码对它们进行PDF格式化:
Sub PDFSheets()
Dim ans As Variant
Dim fPath As String
Dim Team As String
ans = MsgBox("Please ensure the sheets you would like to PDF are visible before running this macro. Files will be saved to your Desktop." & Chr(10) & Chr(10) & "Do you wish to continue?", vbYesNo + vbInformation, "PDF Sheets")
If ans = vbYes Then
Sheets("FrontSheet").Visible = True
Sheets("Launcher").Visible = False
Team = Sheets("FrontSheet").Range("E21").Value
fPath = CreateObject("WScript.Shell").specialfolders("Desktop")
Call SelectAllSheets
ActiveSheet.ExportAsFixedFormat Type:=xlTypePDF, Filename:=fPath & "/" & Format(Now(), "yyyymmdd") & Team & " VM", _
openafterpublish:=True, ignoreprintareas:=False
Sheets("Launcher").Visible = True
Sheets("FrontSheet").Visible = False
Else
Exit Sub
End If
End Sub
示例场景:
-Sheet 1有1页,没有页脚
-Sheet 2有5个寻呼机,页脚Page &[Page] of &[Pages]
- 然后PDF将在表2的底部输出2 of 6
这是遵守PDF的规则而不是表格中的页码。任何想法如何让我把它放到1 of 5
而不是(如工作簿上所示)?
感谢任何帮助 印花布
答案 0 :(得分:0)
试试这个。
With Worksheets("Launcher").PageSetup
.RightFooter = "&""Arial""&10 Page &P of " & .Pages.Count
End With
另外,转到页面布局 - >页面设置,在页面选项卡中,将第一页编号设置为1。