Добавить разрывы страниц в отсортированных данных с помощью VBA в Microsoft Excel
В этой статье мы создадим макрос для вставки разрывов страниц на основе определенного условия.
Необработанные данные включают данные агента, которые включают имя агента, имя клиента, номер телефона и идентификатор электронной почты.
Нам нужны данные конкретного агента на отдельных страницах при печати. Итак, мы хотим вставить разрыв страницы в конце данных каждого агента.
Логическое объяснение
Мы создали макрос «InsertingPagebreak» для вставки разрыва страницы. Мы сравниваем значения двух последовательных ячеек в первом столбце, чтобы найти последнюю ячейку, относящуюся к определенному агенту, и вставить разрыв страницы.
Объяснение кода
ActiveSheet.ResetAllPageBreaks Приведенный выше код используется для удаления любых предыдущих разрывов страниц, вставленных в лист.
If Cells (LngRow, LngCol) .Value <> Cells (LngRow — 1, LngCol) .Value Then Приведенный выше код используется для сравнения последовательных ячеек в первом столбце.
ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Cells (LngRow, LngCol)
Приведенный выше код используется для вставки разрывов страниц перед указанными ячейками.
Пожалуйста, введите код ниже
Sub InsertingPagebreak() 'Declaring variables Dim LngCol As Long Dim LngRow, MaxRow As Long 'Clear existing page breaks ActiveSheet.ResetAllPageBreaks LngCol = 1 'Getting row number of last cell MaxRow = Range("A11").SpecialCells(xlCellTypeLastCell).Row 'Looping through all the rows starting from thirteenth row For LngRow = 13 To MaxRow 'Comparing values in cell of two consecutive rows for the specified column If Cells(LngRow, LngCol).Value <> Cells(LngRow - 1, LngCol).Value Then 'Inserting page break ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Cells(LngRow, LngCol) End If Next LngRow End Sub
Если вам понравился этот блог, поделитесь им с друзьями на Facebook и Facebook.
Мы будем рады услышать от вас, дайте нам знать, как мы можем улучшить нашу работу и сделать ее лучше для вас. Напишите нам на [email protected]