Установить PrintArea для отдельной книги - PullRequest
0 голосов
/ 21 января 2020

Я не могу установить область печати для внешней временной книги. У меня есть основной саб, который я использую, чтобы перейти к частному сабвуферу ниже. В основной подпрограмме я правильно определил tempWB, однако не могу заставить его работать в частной подпрограмме. Я получаю эту ошибку: this error

Это работает, если я изменю рабочую книгу на ThisWorkbook, но не для внешней рабочей книги.

Private Sub Format(rwCnt As Long, lCol As Long, lColName As String, tempWB As Workbook)

    Dim pArea As Range
    rwCnt = rwCnt + 11

    With tempWB.Worksheets(1)
        Set pArea = .Range("A1:" & lColName & rwCnt)
        With .PageSetup
            .PrintArea = pArea
            .PrintTitleRows = "$2:$2"
            .Orientation = xlLandscape
            With ActiveWindow
                If .FreezePanes Then .FreezePanes = False
                .SplitColumn = 0
                .SplitRow = 2
                .FreezePanes = True
            End With
        End With
    End With

End Sub

Любая помощь будет признателен, спасибо!

1 Ответ

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

Я не уверен, почему он будет работать для ThisWorkbook как есть, но из документации PrintArea обратите внимание, что PrintArea ожидает String.

Либо измените это на

.PrintArea = pArea.Address

Или просто используйте строку напрямую:

.PrintArea = "A1:" & lColName & rwCnt
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...