Как исключить лист из общего числа страниц? - PullRequest
0 голосов
/ 10 января 2020

Я хочу добавить номера страниц в свою электронную таблицу, когда я ее распечатываю, но я не хочу, чтобы некоторые листы учитывались при подсчете общего количества &[Pages]. Рабочая тетрадь имеет 4 листа, 3 из них должны быть напечатаны, но мне нужны только номера страниц для первых двух листов. Возможно ли это без VBA?

1 Ответ

1 голос
/ 10 января 2020

Попробуйте скрыть листы, которые вы не хотите печатать.

Если вы выберете Print Entire Workbook в диалоге печати, он будет считать все страницы, видимые в книге. Я сделал простую рабочую книгу, поместил количество страниц в заголовок, а затем сравнил количество страниц в предварительном просмотре до и после сокрытия одной из страниц.

Если по какой-то причине вы не хотите чтобы скрыть лист, даже только для задания на печать, вы также можете выбрать Print Active Sheets после выбора листов, которые вы хотите распечатать. (Стандартные правила выбора Ctrl / Shift применяются к вкладкам листа.)

Если вы пытаетесь исключить что-то вроде титульной страницы, то я не думаю, что это возможно без VBA. Чтобы осуществить это, вы можете использовать функцию Workbook_BeforePrint.

Private Sub Workbook_BeforePrint(Cancel As Boolean)
    Dim ws As Worksheet
    Dim pages As Integer

    pages = 0        
    ' Count the number of pages visible on each desired sheet
    For Each ws In ActiveWorkbook.Sheets
        If ws Then 'Modify to fit your criteria
            pages = pages + (ws.HPageBreaks.Count + 1) * (ws.VPageBreaks.Count + 1)
        End If
    Next

    ' Update the header or footer with the desired values.
    For Each ws In ActiveWorkbook.Sheets
        If ws Then 'Modify to fit your criteria
            ws.PageSetup.LeftHeader = "3"
        End If
    Next
End Sub
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...