Problemas de impresión después de ocultar filas

Impresión después de aplicar un filtro con macro

@Dante Amor nuevamente te escribo una pregunta para pedir tu apoyo en realidad estoy muy agradecida contigo por tu valiosa ayuda, como te comente en preguntas anteriores tengo inconvenientes con la impresión después de aplicar los check box y me comentaste que hiciera otra pregunta, ya agregue el código que me indicaste, me queda el inconveniente de la impresión que habíamos visto y me comentabas que se te ocurría para apoyarme, te envíe nuevamente el archivo a tu correo.

Este texto corresponde a las preguntas anteriores: otra ayuda es que cuando marco los check box ya sea de los 3 marcados y quiero imprimir las hojas de los renglones se distorsionan los cuadros en unas hojas salen 3, en otras 2, en otras 5 y así sucesivamente, en cambio cuando no está filtrado con la casilla de celda k5, y los checkbox marcados

Y en esta imagen cuando no tiene filtrado nada se ve así, y es como lo necesito pero cuando ya esta filtrado se distorsiona

1 Respuesta

Respuesta
1

Te anexo la macro para imprimir:

1. Actualiza las macros de filtros. Te las puse en la pregunta anterior.

2. Debes crear una hoja llamada "Impresion".

3. Para hacer la impresión de lo filtrado o de lo que tengas en la hoja "RENGLONES", se debe copiar la información filtrada de "RENGLONES" y pegar en la hoja "impresion".

Ya con la información en la hoja "impresion", se deben ajustar los saltos de hoja.

4. Te preparé una macro para imprimir, copia la información en la hoja "impresion", ajusta los saltos de hoja y te deja lista la hoja "impresion" para imprimir.

Sub impresion()
  Dim h1 As Worksheet, h2 As Worksheet
  Dim u1 As Long, u2 As Long, n As Long
  Application.ScreenUpdating = False
  Application.DisplayAlerts = False
  '
  Set h1 = Sheets("RENGLONES")
  Set h2 = Sheets("Impresion")
  h2.Cells.Clear
  u1 = h1.Range("D" & Rows.Count).End(3).Row
  h1.Range("A1:I" & u1).Copy
  h2.Range("A1").PasteSpecial xlPasteColumnWidths
  h2.Range("A1").PasteSpecial xlPasteValues
  h2.Range("A1").PasteSpecial xlPasteFormats
  h2.PageSetup.PrintArea = ""
  h2.ResetAllPageBreaks
  '
  On Error Resume Next
  For n = 1 To h2.HPageBreaks.Count
    h2.HPageBreaks(1).DragOff Direction:=xlDown, RegionIndex:=1
  Next
  On Error GoTo 0
  '
  Call Macro4(h2)
  u2 = h2.Range("D" & Rows.Count).End(3).Row
  h2.PageSetup.PrintArea = "A1:I" & u2
  '
  For n = 71 To u2 Step 66
    h2.HPageBreaks.Add Before:=h2.Range("A" & n)
  Next
End Sub

[Recuerda valorar la respuesta.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas