ich bin leider nochmals auf Euer Wissen und Eure Hilfe angewiesen.
Ich möchte den User über eine Listbox entscheiden lassen, welche Tabellenblätter gedruckt werden sollen.
An sich klappt auch alles, jedoch werden die Tabellenblätter immer ein einem jeweils separaten Druckvorgang bearbeitet.
Den Code bzw. die Bestandteile habe ich mir so aus dem Netz rausgesucht.
Ich habe es mit dem PDF-Drucker getestet, was wohl auch ab und zu genutzt werden wird.
Wie kann ich nun den Code so anpassen, dass das Makro die Tabellenblätter zusammenhängend _ druckt?
Private Sub CommandButton1_Click()
Dim lngCounter As Long
Dim lngArray As Long
Dim strArrText() As String
lngArray = -1
For lngCounter = 0 To Me.ListBox1.ListCount - 1
If Me.ListBox1.Selected(lngCounter) Then
lngArray = lngArray + 1
ReDim Preserve strArrText(lngArray)
strArrText(lngArray) = Me.ListBox1.List(lngCounter)
End If
Debug.Print strArrText(lngArray)
Next lngCounter
Application.Dialogs(xlDialogPrint).Show
ThisWorkbook.Worksheets(strArrText()).PrintOut
ActiveSheet.Select
Unload Me
End Sub
Ganz am Anfang mit statischer Vorgabe wie die Blätter gedruckt werden sollen, hat alles mit _ nachfolgendem Code geklappt:
'ArrDruck = Split("Deckblatt,Analyse - Investments,Analyse - Versorger,Mandat,Mandat Partner,GWG", ",")
Mit Arrays kenne ich mich leider noch gar nicht sonderlich aus.
Es handelt sich um folgende Datei:
https://www.herber.de/bbs/user/143083.xlsm
Wahrscheinlich ist die Antwort eine recht einfache, aber ich komme nicht drauf und finde auch nichts passendes.
Viele Grüße und schon einmal vielen Dank im Voraus.
Manuel