En este artículo, crearemos una macro para insertar saltos de página, según una determinada condición.

Los datos brutos consisten en datos del agente, que incluyen el nombre del agente, el nombre del cliente, el número de teléfono y la identificación de correo electrónico.

ArrowRawData

Queremos datos de un agente en particular en páginas separadas durante la impresión. Entonces, queremos insertar un salto de página al final de los datos de cada agente.

ArrowOutput

Explicación lógica

Hemos creado la macro «InsertingPagebreak» para insertar un salto de página. Hacemos una comparación de valores de 2 celdas consecutivas en la primera columna para encontrar la última celda relacionada con un agente en particular e insertar un salto de página.

Explicación del código

ActiveSheet.ResetAllPageBreaks El código anterior se utiliza para eliminar cualquier salto de página anterior insertado en la hoja.

If Cells (LngRow, LngCol) .Value <> Cells (LngRow – 1, LngCol) .Value Then El código anterior se usa para comparar celdas consecutivas dentro de la primera columna.

ActiveWindow.SelectedSheets.HPageBreaks.Add Before: = Cells (LngRow, LngCol)

El código anterior se utiliza para insertar saltos de página antes de las celdas especificadas.

Siga a continuación el código

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

Si te gustó este blog, compártelo con tus amigos en Facebook y Facebook.

Nos encantaría saber de usted, háganos saber cómo podemos mejorar nuestro trabajo y hacerlo mejor para usted. Escríbanos a [email protected]