VBA: Hilfe bei Makro zum Formatieren
03.03.2020 11:06:51
Axel
ich habe das unten aufgeführte Makro zum Einrichten einer Seite zusammengeschrieben (zum Teil mit Makroeditor).
Grundsätzlich läuft es durch, aber:
- das Datum im CenterHeader ist durchgestrichen
- die Seitenzahl "&P" im RightFooter ist nicht die Seitenzahl, sondern die Dateiquelle
- die Gesamtseitenzahl "&N" im RightFooter ist keine Zahl, sondern die Dateibezeichnung
- die zu druckende Tabelle füllt nicht das ganze Blatt, obwohl der Fokus auf 100% steht.
Ich erbitte eure Hilfe. Nach meinen Recherchen müsste es so funktionieren.
Sub Seite_einrichten()
Application.PrintCommunication = False
Application.ScreenUpdating = False
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$11" 'Wiederholungszeilen pro Seite
.PrintTitleColumns = ""
.PrintArea = ""
.LeftHeader = ""
.CenterHeader = Format(Date, "Long Date")
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = "Seite &P von &N" 'Fußzeile rechts: Seite 1 von n
.Orientation = xlLandscape 'Querformat
.PrintComments = xlPrintNoComments
.PrintQuality = 600
.Zoom = 100
.FitToPagesWide = False
.FitToPagesTall = False
.PaperSize = xlPaperA4
.LeftMargin = Application.InchesToPoints(0.5)
.RightMargin = Application.InchesToPoints(0.5)
.TopMargin = Application.InchesToPoints(0.7)
.BottomMargin = Application.InchesToPoints(0.7)
.HeaderMargin = Application.InchesToPoints(0.5)
.FooterMargin = Application.InchesToPoints(0.5)
.PrintHeadings = False
.PrintGridlines = False
.CenterHorizontally = False
.CenterVertically = False
.Draft = False
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.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
ActiveWindow.View = xlPageBreakPreview
ActiveSheet.VPageBreaks(1).DragOff Direction:=xlToRight, RegionIndex:=1
ActiveSheet.HPageBreaks(1).DragOff Direction:=xlDown, RegionIndex:=1
ActiveWindow.View = xlNormalView
Application.ScreenUpdating = True
Application.Dialogs(xlDialogPrint).Show
End Sub
Vielen Dank an alle vorab.Axel