ich habe diese Frage schon in einem anderen Forum gestellt - leider ohne Erfolg. Ich hoffe, irgend jemand hat die Lösung:
Ich habe in einer Arbeitsmappe den Druck von 31 Tabellenblättern über folgendes Makro gesteuert, _
was eineinhalb Jahre einwandfrei geklappt hat:
Sub AnalyseDrucken()
Sheets(Array("ADB Deckblatt", "01 Struktur", "02 Struktur", "03 UntLohn Miete AfA", "04 _
Verzinsung", _
"05 Dir Werk und Lohn", "06 Gemeinkosten", "07 SoKo und BL", "08 GKZ Wirt", _
"09 Kostenverhältn", "10 GK in % Lohn", "11 Prod Werkstoffb Verwaltung", _
"12 UV Bilanzbild", "13 Debi Kredi Bilanzbild", "14 Bonitätsübersicht", _
"15 Zuschläge Mat Sub", "16 Teilkosten", "17 Teilkosten", "18 Kalkgrundlagen", _
"19 DB-Rechnung", "PDB Deckblatt", "20 Preisanpassung", "21 Plan Kapaz", _
"22 Plan Lohngeb Leistungsbed", "23 Plan fixe GK", "24 Kostenvorgabe", _
"25 Break-Even und MaWS", "26 Nachkalkulation", "27 Kapaz Lohnpreis", _
"28 EDV-Stammdaten", "29 Letzte Seite")).Select
Application.Dialogs(xlDialogPrint).Show
Sheets("29 Letzte Seite").Select
End Sub
Nun habe ich die Arbeitsmappe um 3 Tabellenblätter erweitert. Das bisherige Blatt 29 Letzte _
Seite habe ich nach hinten geschoben und entsprechend das Makro am Ende erweitert (Blätter sind _ also auch in der gewünschten Reihenfolge angeordnet):
Sub AnalyseDrucken()
Sheets(Array("ADB Deckblatt", "01 Struktur", "02 Struktur", _
"03 UntLohn Miete AfA", "04 Verzinsung", _
"05 Dir Werk und Lohn", "06 Gemeinkosten", "07 SoKo und BL", "08 GKZ Wirt", _
"09 Kostenverhältn", "10 GK in % Lohn", "11 Prod Werkstoffb Verwaltung", _
"12 UV Bilanzbild", "13 Debi Kredi Bilanzbild", "14 Bonitätsübersicht", _
"15 Zuschläge Mat Sub", "16 Teilkosten", "17 Teilkosten", "18 Kalkgrundlagen", _
"19 DB-Rechnung", "PDB Deckblatt", "20 Preisanpassung", "21 Plan Kapaz", _
"22 Plan Lohngeb Leistungsbed", "23 Plan fixe GK", "24 Kostenvorgabe", _
"25 Break-Even und MaWS", "26 Nachkalkulation", "27 Kapaz Lohnpreis", _
"28 EDV-Stammdaten", "29 Überstunden", "30 EFB Preis 221", _
"31 EFB Preis 221 mod", "32 Letzte Seite")).Select
Application.Dialogs(xlDialogPrint).Show
Sheets("32 Letzte Seite").Select
End Sub
Ich drucke meist in AdobeProf, aber es geht auch mit anderen Druckern.
Das Problem: Bei der pdf-Erstellung sehe ich, dass die Anzahl Tabellenblätter bis zum Ende durchgezählt wird (nun 34), dann geht das Makro ins Speichern, fragt nach einem Speichernamen (ich vergebe ihn). Dann geht das Makro wieder ins Speichern und fragt erneut nach einem Namen (den ich vergebe).
Fazit: Ich habe am Ende zwei pdfs, die ich zusammen hängen müsste. Der erste Block geht bis "28 EDV-Stammdaten", der zweite Block umfasst dann die Seiten "29 ..." bis "32 Letzte Seite".
Und der Witz: Wenn ich den Urzustand wieder herstelle, wird auch die "32 Letzte Seite" abgeschnitten diese ebenfalls getrennt gedruckt.
Anführungszeichen und Unterstriche habe ich alle kontrolliert ... Gibt es bei SheetsArray vielleicht ein Maximum für die Anzahl Tabellenblätter? Das Makro liegt auf "32 Letzte Seite" auf einem Button. Wie gesagt, bisher funzte es tadellos, nur nicht mehr seit der Erweiterung ...
Ich wäre heilfroh für eine Hilfe!!
Schokoline