Drucken Makro PowerPoint

Hallo zusammen!

Ich hoffe ihr könnt mir weiter helfen. Mit meinen sehr bescheidenen VBA Kenntnissen bekomme ich es zwar hin, dass der Druck aus einer laufenden Präsentation raus anspringt, allerdings hab ich da ein paar „Sonderwünsche“, die ich mir selber nicht erfüllen kann.

Und zwar hätte ich es gerne, dass das Makro abfragt was gedruckt werden soll, also z.b. die einzelne Folie 4 oder den Bereich 6-9 oder alles.
Also der Anwender kann sich dann eben selber die zu druckenden Folien aussuchen.

Schön wäre es auch, wenn man den Drucker der angesteuert werdne soll aussuchen kann. Also nicht das der Druck direkt über den Standartdrucker geht. Aber das ist kein muss, kann mir vorstellen, dass das Makro ansich sowieso schon kompliziert genug ist.

Jetzt genug geschwafel, ich hoffe wirklich ihr könnt einer verzweifelten Person helfen. Ich bedanke mich schon mal im Voraus für die ganze Mühe.

Liebe Grüße

Hallo,

versuch mal aus dieser kleinen Minimalvorlage was zu basteln, was Deinen Bedürfnissen entspricht:

Sub Ausdruck()
 With ActivePresentation.PrintOptions
 .RangeType = ppPrintSlideRange
 With .Ranges
 .ClearAll
 .Add Start:=InputBox("ab welcher Folie?"), End:=InputBox("Bis zu welcher Folie?")
 End With
 .ActivePrinter = InputBox("welcher Drucker?")
 End With
 ActivePresentation.PrintOut
End Sub

Gruß, Bernd

[Bei dieser Antwort wurde das Vollzitat nachträglich automatisiert entfernt]

Huhu nochmal :smiley:
Also ich hab mir da jetzt mal was zusammen gebastelt und wahrscheinlich totalen Mist gebaut :smiley:

Jedenfalls ist das mein halbes Makro.

Sub Drucken()
Dim Folie As Variant
Dim Folie2 As Variant

If MsgBox(„Gesamte Präsentation drucken? (Bei Druck von einzelnen, selbst definierten Folien, bitte auf Nein klicken)“, vbYesNoCancel, „Drucken“) = vbNo Then
With ActivePresentation.PrintOptions
.RangeType = ppPrintSlideRange
With .Ranges
.ClearAll
Folie = InputBox(„Anfangsfolie“)
Folie2 = InputBox(„Endfolie“)
.ClearAll
End With
End With
ActivePresentation.PrintOut From:=CLng(Folie), To:=CLng(Folie2), Copies:=1
If vbYes Then
ActivePresentation.PrintOut Copies:=1

End If
End Sub

Also dieses erste macht der ja ganz brav, wenn man da eingibt welche Seiten man will, dann druckt der die. Aber wenn man Auf Ja in der Msg Box klickt, dann macht der irgendwie nix und da soll er ja dann eigentlich alle Folien 1x ausdrucken.

Aber das bekomm ich irgendwie so gar nicht hin, genauso wenig wie wenn man auf Abbrechen klickt, dass er da das Makro ohne weiteres vorgehen beendet.

Vielleicht kann ja nochmal wer drüber gucken, bin da wirklcih auf Hilfe angewiesen.

Danke!