Я хочу печатать только один лист за раз (из-за огромного количества данных, которые привели бы к 1000 страницам, если бы я печатал всю книгу), но я хочу, чтобы заголовок автоматически обновлялся перед печатью. Заголовок будет иметь формулу, которая ссылается на ячейки и вставляет значение этой ячейки. Однако Worksheet_BeforePrint, похоже, не имеет значения, а Workbook_BeforePrint не работает, если только печатать активный лист.
Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim rptdate As String
Dim ride As String
Dim sht As String
sht = ActiveSheet.Name
rptdate = Sheets("Inputs").Range("B3").Value
prov = Sheets("Inputs").Range("B4").Value
ride = Sheets("Inputs").Range("B5").Value
ActiveSheet.PageSetup.RightHeader = sht & " Ride Name: " & ride & " First Report Date: " & rpdate
End Sub
Я хочу, чтобы в заголовке отображалось что-то вроде: «Имя листа Название поездки: поездка Дата первого отчета: rptdate» Предпочтительно в 3 строки, как указано выше. Приведенный выше код работает, если я должен распечатать всю книгу, но не тогда, когда я хочу распечатать только активный рабочий лист.