我有一些代码可以在Workbook_BeforePrint方法中更新Excel页面标题:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim ws As Worksheet
Set ws = Worksheets("Sheet1")
ws.PageSetup.LeftHeader = ws.Range("A1").Value
End Sub
Public Sub PrintSheet()
Worksheets("Sheet1").PrintOut
End Sub
当我打印而不进入打印预览时,标题不会更新。
当我首先打印预览时,会添加标题。
当我打印首先打印预览时,如何确保正确更新页眉?
非常感谢!
答案 0 :(得分:0)
它对我有用。
确保Worksheets(“Sheet1”)。范围(“A1”)实际上有一些东西。检查工作表名称也确保它是正确的。工作表具有可以通过UI更改的Name属性以及可以通过代码或“属性”对话框更改的CodeName属性。仔细检查一下你是不是在混淆它们。您的代码Worksheets(“Sheet1”)使用Name属性(选项卡名称)。
另外,请确保您没有在某些调用过程中禁用事件。您可以在PrintSheet中添加一个语句,如
Debug.Print Application.EnableEvents
确保堆栈中的某些内容不会禁用事件。
答案 1 :(得分:0)
在更改标题后,尝试添加“ Application.PrintCommunication = True”行