Drucker und Papierschacht per VBA-Skript auswählen

Problem
In meinem großen Drucker liegen im Papierschacht 1 die weißen Blätter, im Papierschacht 2 die Briefbögen und im Bypass die Einlegestreifen. Nun möchte ich für den Papierschacht 2 und den Bypass jeweils eine Schaltfläche in der Menüleiste anlegen, über die ich das geöffnete Dokument direkt dort drucken kann.

Es soll also per VBA sowohl der richtige Drucker als auch das richtige Modell ausgewählt werden.

Lösung
Da die Bezeichnung der Druckerschächte von Drucker zu Drucker unterschiedlich sein kann, ist es empfehlenswert, jede Variante zunächst per Makro zu erstellen. Die nachfolgende Lösung beschreibt die Vorgehensweise in Word 2010.

Um das Dokument über den Bypass auszudrucken, gehen Sie wie folgt vor:

1. Makro erstellen

Sub LabelDruckenUeberBypass()
 
' Die Datei dient dazu, einen Einlegestreifen über den Bypass eines Druckers per Schaltfläche auszudrucken,
' ohne dass jedes Mal das Ausgabefach neu eingestellt werden muss.
' Eine Anleitung zu diesem Makro finden Sie am Ende dieses VBA-Codes.
    
    With ActiveDocument.Styles(wdStyleNormal).Font
        If .NameFarEast = .NameAscii Then
            .NameAscii = ""
        End If
        .NameFarEast = ""
    End With
    With ActiveDocument.PageSetup
        .LineNumbering.Active = False
        .Orientation = wdOrientPortrait
        .TopMargin = CentimetersToPoints(2)
        .BottomMargin = CentimetersToPoints(0.7)
        .LeftMargin = CentimetersToPoints(1)
        .RightMargin = CentimetersToPoints(1)
        .Gutter = CentimetersToPoints(0)
        .HeaderDistance = CentimetersToPoints(1.25)
        .FooterDistance = CentimetersToPoints(1.25)
        .PageWidth = CentimetersToPoints(10.48)
        .PageHeight = CentimetersToPoints(24.13)
        .FirstPageTray = wdPrinterManualFeed
        .OtherPagesTray = wdPrinterManualFeed
        .SectionStart = wdSectionNewPage
        .OddAndEvenPagesHeaderFooter = False
        .DifferentFirstPageHeaderFooter = False
        .VerticalAlignment = wdAlignVerticalBottom
        .SuppressEndnotes = False
        .MirrorMargins = False
        .TwoPagesOnOne = False
        .BookFoldPrinting = False
        .BookFoldRevPrinting = False
        .BookFoldPrintingSheets = 1
        .GutterPos = wdGutterPosLeft
    End With
 
    ' Nachfolgend den Druckernamen eingeben
    ActivePrinter = "Kyocera Ecosys P2235dw"
    Application.PrintOut FileName:="", Range:=wdPrintAllDocument, Item:= _
        wdPrintDocumentWithMarkup, Copies:=1, Pages:="", PageType:= _
        wdPrintAllPages, Collate:=True, Background:=True, PrintToFile:=False, _
        PrintZoomColumn:=0, PrintZoomRow:=0, PrintZoomPaperWidth:=0, _
        PrintZoomPaperHeight:=0
End Sub
 
 
' Anleitung zu dem oben stehenden VBA-Code:
'
' Die Datei dient dazu, einen Einlegestreifen über den Bypass eines Druckers per Schaltfläche auszudrucken,
' ohne dass jedes Mal das Ausgabefach neu eingestellt werden muss.
'
' Geben Sie in der Zeile ActivePrinter = "KMP2235dwAHEIL" zwiscchen den Anführungszeichen den Druckernamen an,
' den Sie dem Drucker in Ihrem System gegeben haben.
'
' Andere wesentliche Funktionen sind:
'
' FirstPageTray stellt den Druckschacht der ersten Seite ein.
'        .FirstPageTray = wdPrinterManualFeed
'
' OtherPagesTray stellt den Druckschacht ab der zweiten Seite ein.
'        .OtherPagesTray = wdPrinterManualFeed
'
' ActivePrinter stellt den gewünschten Drucker ein.
'    ActivePrinter = "Kyocera Ecosys P2235dw"
'
' Speichern Sie diese Vorlage als "Vorlage-Einlegestreifen.docm" ab. Nur wenn diese als ".docm"-Datei gespeichert wurde, wird das Makro ausgeführt.

'Makro der Schaltfläche zuweisen
'   - Klicken Sie in der Symbolleiste am oberen Seitenrand auf den „Pfeil nach unten“ auf der rechten Seite und wählen Sie den Befehl „Weitere Befehle“ aus.
'   - Im DropDownMenü „Befehle auswählen“ wählen Sie „Makros“ aus.
'   - Markieren Sie das Makro indem Sie es mit der linken Maustaste anklicken.
'   - Klicken Sie dann auf die Schaltfläche „Hinzufügen“ und bestätigen Sie mit Klick auf „OK“.
'   - Ihr Makro steht nun in der Symbolleiste am oberen Seitenrand bereit. Wenn Sie das Symbol anklicken, werden die hinterlegten Einstellungen (richtiger Drucker, richtiger Papierschacht) verwendet.

2. Makro der Schaltfläche zuweisen

Ihr Makro steht nun in der Symbolleiste am oberen Seitenrand bereit. Wenn Sie das Symbol anklicken, werden die hinterlegten Einstellungen (richtiger Drucker, richtiger Papierschacht) verwendet.