Я хочу печатать только по одному листу за раз (из-за большого количества данных, которые могли бы привести к 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 строки, как указано выше. Приведенный выше код работает, если я хочу напечатать всю книгу целиком, но не тогда, когда я хочу распечатать только Активный лист.