VBA: Como paginar en excel

Estoy generando una macro y quiero paginar en pie de página y genero lo siguiente:

With ActiveSheet.PageSetup

      .CenterFooter = "&P of &N"

End With

Pero en lugar de sacarme "1 of 10" me devuelve "1 de (El nombre del archivo)"

¿No entiendo por que?

Respuesta
1

[Hola

Lo más probable es que tengas más código que modifica el pie de página y/o que "manualmente" estés o hayas insertado eso o "algo".

Gracias Abraham, pero creo que no hay nada más insertado y manualmente no se ha manipulado, en cualquier caso adjunto la codificación completa.

Application.PrintCommunication = False
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$8"
.PrintTitleColumns = ""
End With
Application.PrintCommunication = True
ActiveSheet.PageSetup.PrintArea = ""
Application.PrintCommunication = False
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = "Page &P of &N"
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.7)
.RightMargin = Application.InchesToPoints(0.7)
.TopMargin = Application.InchesToPoints(0.75)
.BottomMargin = Application.InchesToPoints(0.75)
.HeaderMargin = Application.InchesToPoints(0.3)
.FooterMargin = Application.InchesToPoints(0.3)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlPortrait
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = False
.FitToPagesWide = 1
.FitToPagesTall = 0
.PrintErrors = xlPrintErrorsDisplayed
.OddAndEvenPagesHeaderFooter = False
.DifferentFirstPageHeaderFooter = False
.ScaleWithDocHeaderFooter = True
.AlignMarginsHeaderFooter = True
.EvenPage.LeftHeader.Text = ""
.EvenPage.CenterHeader.Text = ""
.EvenPage.RightHeader.Text = ""
.EvenPage.LeftFooter.Text = ""
.EvenPage.CenterFooter.Text = ""
.EvenPage.RightFooter.Text = ""
.FirstPage.LeftHeader.Text = ""
.FirstPage.CenterHeader.Text = ""
.FirstPage.RightHeader.Text = ""
.FirstPage.LeftFooter.Text = ""
.FirstPage.CenterFooter.Text = ""
.FirstPage.RightFooter.Text = ""
End With
Application.PrintCommunication = True

Gracias de antemano!

[Hola

El código grabado no siempre es "limpio" y, en casos como el tuyo, causa dilemas, por eso siempre es lo mejor solo usar la grabado de macros como referencia a código que no se conoce. Si realmente no necesitas todo lo que se ve ahí (veo incluso cosas que se activan por defecto), sugiero borrar y/o no usar todo eso, sino solamente la parte que necesitas, que aparentemente es la de insertar el pie de página.

Hola de nuevo Abraham,

Da igual poniendo el código grabado o limpiándolo, me sigue devolviendo lo mismo. (Me devuelve el nombre del archivo en lugar del total de páginas). No lo entiendo!!!!!

En cualquier caso gracias!!!!!

[Hola nuevamente

Sugiero borrar el pie de página y luego colocarlo, todo con la macro. Si aún así no resulta, quizá si colocas el archivo en algún Drive y compartes por aquí el enlace, pues sea más fácil ayudarte. Ah, si tienes datos que consideras privados, solo bórralos y ya.

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas