Problema imprimiendo datos filtrados

Caliche

Active Member
Joined
Mar 26, 2002
Messages
339
Ya coloqué esta pregunta en el foro en inglés, pero desafortunadamente no ha habido respuesta. Espero que en el foro en español alguien pueda ayudarme.

Mi situación es la siguiente: estoy tratando de imprimir los encabezados de las tres primeras columnas y los datos en las filas de un rango de datos que está filtrado. Actualmente el rango ya filtrado muestra solamente 3 filas de datos, pero cuando hago “print preview” de lo que supuestamente voy a imprimir (encabezados y 3 filas de datos), me aparece como que fuera a imprimir cada fila de datos en una página independiente, ó sea, me va a imprimir tres páginas, no 3 filas en una sola página.

Incluyo parte del código que estoy utilizando, por si alguno de ustedes puede encontrar el problema ó sugerirme algún ajuste en dicho código. Es importante tener en cuenta que no he insertado saltos de página manualmente.

User_Name = Environ("UserName")
With ActiveSheet.AutoFilter.Range
On Error Resume Next
Set rng = .Offset(1, 0).Resize(.Rows.Count - 1, 3) _
.SpecialCells(xlCellTypeVisible) ' Columnas "A:C"
On Error GoTo 0
End With

rng.Select ‘ Acá supuestamente son solo 3 filas de datos
'*
ActiveSheet.PageSetup.PrintArea = Selection.Address
With ActiveSheet.PageSetup
.PrintTitleRows = "$A$" & Range("Head").Row ' Rango(“Head”) ya definido
.PrintTitleColumns = "$A:$C"
End With
'*
ActiveSheet.PageSetup.PrintArea = Selection.Address

With ActiveSheet.PageSetup
.LeftMargin = Application.InchesToPoints(0)
.RightMargin = Application.InchesToPoints(0)
.TopMargin = Application.InchesToPoints(0)
.LeftFooter = "Deleted files on &D - &T"
.CenterFooter = "by" & User_name ' User_name previously defined
.BottomMargin = Application.InchesToPoints(0.384251968503937)
.HeaderMargin = Application.InchesToPoints(0)
.FooterMargin = Application.InchesToPoints(0.196850393700787)
.PrintQuality = 600
.Orientation = xlLandscape ' Horizontal
.PaperSize = xlPaperLetter
.BlackAndWhite = True
.FitToPagesWide = 1
.CenterHorizontally = True
.FitToPagesTall = False
End With

Columns("A:A").EntireColumn.AutoFit
ActiveSheet.ResetAllPageBreaks ' To be sure
ActiveWindow.SelectedSheets.PrintPreview
'*
'* In previous statement it's showing me that will print 3 pages
'*


Muchas gracias por su ayuda.

Caliche
 

Excel Facts

Pivot Table Drill Down
Double-click any number in a pivot table to create a new report showing all detail rows that make up that number
Caliche,

Eso de estar seleccionando las celdas visibles más bien está causando problemas en vez de resolviéndolos. Cambié la línea que dice
Code:
ActiveSheet.PageSetup.PrintArea = Selection.Address
al siguiente
Code:
ActiveSheet.PageSetup.PrintArea = ActiveSheet.AutoFilter.Range.Address
y me funcionó bien. Usar el código de arriba me dió resultados como usted describe, cada area en una página diferente.

Saludos,
 
Upvote 0
Gracias, Greg. Ya funciona bien.

Cualés serían entonces las instrucciones para imprimir solamente las 3 primeras columnas del rango del autofiltro?. Alguna redefinición del rango usando Resize, por ejemplo ?

Muchas gracias por su tiempo.


Caliche
 
Upvote 0
Sí, RESIZE funcionaría...
Code:
ActiveSheet.PageSetup.PrintArea = ActiveSheet.AutoFilter.Range.Resize(, 3).Address
 
Upvote 0

Forum statistics

Threads
1,223,952
Messages
6,175,594
Members
452,656
Latest member
earth

We've detected that you are using an adblocker.

We have a great community of people providing Excel help here, but the hosting costs are enormous. You can help keep this site running by allowing ads on MrExcel.com.
Allow Ads at MrExcel

Which adblocker are you using?

Disable AdBlock

Follow these easy steps to disable AdBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the icon in the browser’s toolbar.
2)Click on the "Pause on this site" option.
Go back

Disable AdBlock Plus

Follow these easy steps to disable AdBlock Plus

1)Click on the icon in the browser’s toolbar.
2)Click on the toggle to disable it for "mrexcel.com".
Go back

Disable uBlock Origin

Follow these easy steps to disable uBlock Origin

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back

Disable uBlock

Follow these easy steps to disable uBlock

1)Click on the icon in the browser’s toolbar.
2)Click on the "Power" button.
3)Click on the "Refresh" button.
Go back
Back
Top