Zusammenführung von Druckroutine
Druckroutine
verwende folgende Druckroutine:
Sub drucken()
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("C1") = "ja" Then
ws.PrintOut
End If
Next ws
End Sub
Eine weitere Druckroutine wäre in vielen anderen Arbeitsblättern erforderlich:
Sub DruckMannschaftX()
If Sheets("Tabelle1").Range("D10") > 0 Then Sheets("Tabelle2").Range("D10") = "A": _
Application.Dialogs(xlDialogPrint).Show
If Sheets("Tabelle1").Range("D10") = 2 Then Sheets("Tabelle2").Range("D10") = "B": _
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
If Sheets("Tabelle1").Range("D10") = 3 Then Sheets("Tabelle2").Range("D10") = "C": _
ExecuteExcel4Macro "PRINT(1,,,1,,,,,,,,2,,,TRUE,,FALSE)"
usw.
Sheets("Tabelle2").Range("D10") = "?"
End Sub
Das würde ich nun gerne mit dem "drucken"-Code umgehen.Funktioniert auch mit
Sub AlleMannschaften3()
If Sheets("Tabelle1").Range("D10") > 0 Then Sheets("Tabelle2").Range("D10") = "A": drucken
If Sheets("Tabelle1").Range("D10") = 2 Then Sheets("Tabelle2").Range("D10") = "B": drucken
If Sheets("Tabelle1").Range("D10") = 3 Then Sheets("Tabelle2").Range("D10") = "C": drucken
usw.
Sheets("Tabelle2").Range("D10") = "?"
End Sub
Mein Problem:Wie bekomme ich es hin, dass mir beim ersten Blatt wieder der Druckdialog angezeigt wird?
Ersetze ich bei drucken "ws.PrintOut" mit Application ... :
Sub drucken()
Dim ws As Worksheet
For Each ws In Worksheets
If ws.Range("C1") = "ja" Then
Application.Dialogs(xlDialogPrint).Show
End If
Next ws
End Sub
druckt es mir nur die aktive Seite x-mal.
Gruß Rainer