Heb het zelf nog nooit hoeven doen , maar dit is een schop in de goede richting
Private Sub Set_Printer(ByVal Doc As Printing.PrintDocument, ByVal Printer_Name As String, ByVal tray As String)
Dim pg As New PageSetupDialog()
pg.Document = Doc
pg.PrinterSettings.PrinterName = Printer_Name
For ps = 0 To pg.PrinterSettings.PaperSources.Count - 1
If (pg.PrinterSettings.PaperSources.Item(ps).SourceName.ToString).ToLower = tray.ToLower Then
pg.PrinterSettings.DefaultPageSettings.PaperSource = pg.PrinterSettings.PaperSources.Item(ps)
pg.PageSettings.PaperSource = pg.PrinterSettings.PaperSources.Item(ps)
Exit For
End If
Next
pg.Document.PrinterSettings = pg.PrinterSettings
pg.Document.Print()
End Sub