У меня есть область печати, мне нужно найти последнюю строку, которая находится в области печати. Любая помощь приветствуется.Как найти последний ряд области печати?
Спасибо, вот моя область печати.
ActiveSheet.PageSetup.PrintArea = "A1:F100"
У меня есть область печати, мне нужно найти последнюю строку, которая находится в области печати. Любая помощь приветствуется.Как найти последний ряд области печати?
Спасибо, вот моя область печати.
ActiveSheet.PageSetup.PrintArea = "A1:F100"
Вы можете установить диапазон, то просто сосчитать строки в диапазоне:
Sub t()
Dim printRng As Range, lastRow As Long
Set printRng = Range("A1:F100")
ActiveSheet.PageSetup.PrintArea = printRng
lastRow = printRng.Row + printRng.Rows.Count - 1
Debug.Print "Last row of print area is: " & lastRow
End Sub
вы можете использовать эту функцию:
Function PrintAreaLastRow() As Long
With Range(ActiveSheet.PageSetup.PrintArea)
PrintAreaLastRow = .Rows(.Rows.count).row
End With
End Function
ли @ код user3598756 не работает? Мне просто интересно, потому что ИМО это немного более элегантно и менее неуклюже. Хотя я бы рекомендовал сначала установить Range, но мне просто интересно, почему мой ответ выбран. (Не жалоба или что-то явно, просто интересно) – BruceWayne