mittels Hilfe aus dem Forum ist dieses Makro entstanden. In dem Reiter ist ein Jahreskalender enthalten. Der Druckbereich sind 2 Monate auf einem Blatt Papier.
Private Sub Druckversion_Seitenwechsel_nach_zwei_Monaten()
Dim i As Long, iCount As Integer
Dim Wert1 As Integer
' Wert1 = InputBox("Bitte Spalten-Nr. eingeben!", "Spalten-Nr.", "1")
Wert1 = 2
Sheets(1).Select
Application.ScreenUpdating = False
ActiveWindow.View = xlPageBreakPreview
With ActiveSheet
.ResetAllPageBreaks
For i = 3 To .Cells(.Rows.Count, Wert1).End(xlUp).Row
If IsDate(.Cells(i + 1, Wert1)) And IsDate(.Cells(i, Wert1)) Then
If Month(.Cells(i + 1, Wert1)) Month(.Cells(i, Wert1)) Then
iCount = iCount + 1
If iCount = 2 Then
.HPageBreaks.Add .Cells(i + 1, Wert1)
iCount = 0
End If
End If
End If
Next i
End With
ActiveWindow.View = xlNormalView
With ActiveSheet.PageSetup
.PrintTitleRows = "$1:$1"
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$A:$Y"
With ActiveSheet.PageSetup
.LeftHeader = ""
.CenterHeader = ""
.RightHeader = ""
.LeftFooter = ""
.CenterFooter = ""
.RightFooter = ""
.LeftMargin = Application.InchesToPoints(0.196850393700787)
.RightMargin = Application.InchesToPoints(0.196850393700787)
.TopMargin = Application.InchesToPoints(0.196850393700787)
.BottomMargin = Application.InchesToPoints(0.196850393700787)
.HeaderMargin = Application.InchesToPoints(0.511811023622047)
.FooterMargin = Application.InchesToPoints(0.511811023622047)
.PrintHeadings = False
.PrintGridlines = False
.PrintComments = xlPrintNoComments
.CenterHorizontally = False
.CenterVertically = False
.Orientation = xlLandscape
.Draft = False
.PaperSize = xlPaperA4
.FirstPageNumber = xlAutomatic
.Order = xlDownThenOver
.BlackAndWhite = False
.Zoom = 65
.PrintErrors = xlPrintErrorsDisplayed
End With
ActiveWindow.ScrollRow = 2
Range("A1").Select
Application.ScreenUpdating = True
MsgBox "Druckbereich eingestellt - Sie können drucken!"
End Sub
Nun würde ich gerne den Printerbeich von A bis zur letztgefüllten Spalte (maximal Y) eingrenzen. In den Zellen befinden sich Formeln. Die jeweilige Spalte soll nur dann in den Printbereich, wenn etwas Formeln enthalten ist.
Weiterhin sollte der Zoombereich ebenfalls variabel sein.
Wer kann helfen?
Viele Grüße
Markus