Selles artiklis loome teatud tingimuste põhjal lehekatkestuste lisamiseks makro.
Toorandmed koosnevad agendi andmetest, mis sisaldavad agendi nime, kliendi nime, telefoninumbrit ja e -posti aadressi.
Soovime konkreetse agendi andmeid printimise ajal eraldi lehtedele. Niisiis, me tahame iga agendi andmete lõppu sisestada lehevahe.
Loogiline seletus
Lehevahetuse lisamiseks oleme loonud makro “InsertingPagebreak”. Võrdleme esimese veeru kahe järjestikuse lahtri väärtusi, et leida viimane konkreetse agendiga seotud lahter ja sisestada lehevahe.
Koodi selgitus
ActiveSheet.ResetAllPageBreaks
Ülaltoodud koodi kasutatakse lehele lisatud eelmiste lehekatkestuste eemaldamiseks.
Kui lahtrid (LngRow, LngCol) .Väärtus Lahtrid (LngRow - 1, LngCol). Väärtus Siis
Ülaltoodud koodi kasutatakse esimese veeru järjestikuste lahtrite võrdlemiseks.
ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Lahtrid (LngRow, LngCol)
Ülaltoodud koodi kasutatakse lehtede katkestuste sisestamiseks määratud lahtrite ette.
Palun järgige koodi allpool
Sub InsertingPagebreak () 'Muutujate deklareerimine Dim LngCol As Long Dim LngRow, MaxRow As Long' Kustuta olemasolevad lehepausid ActiveSheet.ResetAllPageBreaks LngCol = 1 'Viimase lahtri rea numbri hankimine MaxRow = Range ("A11"). SpecialCells (xlCellTypeLastCell). "Silmustamine läbi kõigi ridade, mis algavad kolmeteistkümnendast reast For LngRow = 13 To MaxRow" Väärtuste võrdlemine kahe järjestikuse rea lahtris määratud veeru korral If Cells (LngRow, LngCol). Value Cells (LngRow - 1, LngCol). Väärtus siis " Lehevahetuse lisamine ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Lahtrid (LngRow, LngCol) End If Next LngRow End Sub
Kui teile see blogi meeldis, jagage seda oma sõpradega Facebookis. Lisaks saate meid jälgida Twitteris ja Facebookis.
Tahaksime sinust kuulda, andke meile teada, kuidas saaksime oma tööd paremaks muuta ja teie jaoks paremaks muuta. Kirjuta meile meilisaidile