hätte da mal ein Problem und wär euch für nen Tipp dankbar.
Ich möchte fünf verschiedene Sheets einer Tabelle ausdrucken, deren Druckbereich im bereits im Vorfeld definiert habe.
Sheet 1: B1:L124
Sheet 2: B1:H114
Sheet 3: B1:H86
Sheet 4: B1:H103
Sheet 5: B1:H74
Wie ihr seht, weicht die Spaltenanzahl zwischen Sheet 1 und den anderen ab.
Mein bisheriges Makro spuckt das Sheet 1 als eigenen pdf-Ausdruck aus und die Sheets 2 bis 5 in einem pdf-Ausdruck.
Ich kann's mir nicht erklären, vielleicht wisst ihr ja weiter.
Anbei mal meinen Code...
Sub Alles_Drucken()
Dim intR As Integer
Dim ArrDruck() As String
Sheets("Ergebnisauswertung").Select 'Deckblatt mit Ergebnissen _
erzeugen
Range("B1:L114").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$L$114"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$B$1:$L$114"
Set ActiveSheet.HPageBreaks(1).Location = Range("B37")
Sheets("Mitarbeitersysteme").Select 'Nächstes Sheet _
Mitarbeitersysteme
Range("B1:H154").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$154"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$154"
Set ActiveSheet.HPageBreaks(1).Location = Range("B57")
Set ActiveSheet.HPageBreaks(2).Location = Range("B103")
Sheets("Qualitätssysteme").Select 'Nächstes Sheet _
Qualitätssysteme
Range("B1:H120").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$120"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$120"
Set ActiveSheet.HPageBreaks(1).Location = Range("B54")
Sheets("Materialsysteme").Select 'Nächstes Sheet _
Materialsysteme
Range("B1:H76").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$76"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$76"
Set ActiveSheet.HPageBreaks(1).Location = Range("B38")
Sheets("Methoden und Werkzeuge").Select 'Nächstes Sheet _
Methoden und Werkzeuge
Range("B1:H144").Select
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$144"
With ActiveSheet.PageSetup
.PrintTitleRows = ""
.PrintTitleColumns = ""
End With
ActiveSheet.PageSetup.PrintArea = "$B$1:$H$144"
Set ActiveSheet.HPageBreaks(1).Location = Range("B53")
Set ActiveSheet.HPageBreaks(2).Location = Range("B102")
_
' Druckeransteuerung
_
Sheets(Array("Ergebnisauswertung", "Mitarbeitersysteme", "Qualitätssysteme", " _
Materialsysteme", _
"Methoden und Werkzeuge")).Select
Sheets("Ergebnisauswertung").Activate
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
End Sub