mir fehlt für folgendes Problem ein Lösungsansatz:
Ich möchte per VBA aus einer Arbeitsmappe 2 Arbeitsblätter drucken. Die Schwierigkeit besteht darin, dass das erste WorkSheet ein einzelnes Blatt ist (Deckblatt), und im zweiten Arbeitsblatt die Wiederholungszeilen auf der letzten Seite nicht gedruckt werden sollen.
Die Seitenzahlen, die in der Kopfzeile stehen, sollen natürlich durchgehend sein.
Nun habe ich eine Lösung für die Wiederholungszeilen auf einer anderen Excel-Seite gefunden. Das klappt leider nur für ein Arbeitsblatt. Das ExecuteExcel4Macro("GET.DOCUMENT(50)") gibt mir nur die zu druckenden Blätter von einem Arbeitsblatt an. Es funktioniert ganz prima, wenn man nur ein Arbeitsblatt auswählt, ich brauch aber leider 2. Hat jemand eine Idee, was ich tun kann? Die Seitenzahlen in die Kopfzeilen schreiben fällt leider aus,da in der Kopfzeile eine Grafik ist und Text, der sich bei jeder Datei ändert. Oder gibt es eine Möglichkeit "Seite &P von &N" im Kopfzeilentext zu lokalisieren und es zu manipulieren? Wäre schön, wenn jemand eine Idee hat und sie mit mir teilt.
Hier der Code:
Sub Wiederholungszeilen()
Dim a%, b%
Sheets(Array("Deckblatt", "Protokoll")).Select
a = ExecuteExcel4Macro("GET.DOCUMENT(50)")
b = a - 1
ActiveSheet.PageSetup.Order = xlDownThenOver
ActiveSheet.PageSetup.PrintTitleRows = "$1:$2"
For a = 1 To b + 1
If a > b Then
ActiveSheet.PageSetup.PrintTitleRows = ""
End If
ActiveWindow.SelectedSheets.PrintOut _
From:=a, To:=a, Copies:=1, Collate:=True
Next
End Sub