Druck Dialog automatisch 3 mal Drucken

Augenblick… Sagtest du nicht, dass die User »ihren« Drucker selbst auswählen sollen?
Damit hast du das Problem dem Makro diesen Wunsch zu verinnerlichen.
Ich denke an alte O2000-Zeiten für Word zurück; da mussten die Druckbefehle für die PDF-Erzeugung (mittels GhsotScript…) alle einzeln eingerichtet sein; dann Varianten für gute und schlechte Qaulität (Draft). Das war noch lustig.
In deinem Falle schwebt mir eine UserForm vor die die Drucker vorschlägt.

CN8
 
Meine Erfahrung ist, dass man ein Formular mit dem selben Einstellungen/Drucker druckt. Also wollte ich die Option bieten, einen Drucker zu hinterlegen, um den Auswahldialog wegfallen zu lassen.
Wenn keiner hinterlegt ist, wird halt der Druckerauswahldialog angezeigt.
 
Scientist schrieb:
Code:
Sub drucken()
    ' Soße: http://www.herber.de/forum/archiv/1052to1056/1053323_vorhandere_Drucker_auflisten.html
    Dim drucker_aktiv As String
    drucker_aktiv = Application.ActivePrinter       ' aktuellen Drucker auslesen
    Application.Dialogs(xlDialogPrinterSetup).Show  ' neuen Drucker auswaehlen und aktiv setzen
    ActiveSheet.PrintOut Copies:=3, preview:=False  ' 3 Exemplare drucken
    Application.ActivePrinter = drucker_aktiv       ' Drucker wieder zuruecksetzen
End Sub


EDIT:
Weil mir die permanente Auswahl auf den **** gehen wuerde:
Code:
Sub drucken2()
    ' Soße: http://www.herber.de/forum/archiv/1052to1056/1053323_vorhandere_Drucker_auflisten.html
    Dim drucker_aktiv, drucker_optio As String
  
    drucker_optio = "Microsoft Print to PDF"            ' dauerhaft ausgewaehlter Drucker
    drucker_aktiv = Application.ActivePrinter           ' aktuellen Drucker auslesen
  
    If Not drucker_optio = "" Then                      ' Wenn Drucker voreingestellt, suche Drucker; Ansonsten Auswahlmenue anzeigen
  
        For i = 0 To 9                                  ' Schleife ueber alle Ne-Kanaele, um den korrekten zu finden.
            On Error Resume Next
                Application.ActivePrinter = drucker_optio & " auf Ne0" & i & ":"
        Next i
    Else
  
        Application.Dialogs(xlDialogPrinterSetup).Show  ' neuen Drucker auswaehlen und aktiv setzen
    End If
  
    ActiveSheet.PrintOut Copies:=3, preview:=False      ' 3 Exemplare vom aktiven Blatt drucken
    Application.ActivePrinter = drucker_aktiv           ' Drucker wieder zuruecksetzen
  
End Sub
"drucker_optio" wuerde ich dann natuerlich auf eine Zelle verweisen, die den optionalen Druckernamen enthaelt.

Verzeihe die späte Antwort, habe deinen Beitrag nicht gesehen.
Vielen lieben Dank für deine Hilfe :)
Ergänzung ()

Ich habe das Problem mittlerweile anderweitig beihoben.
Danke an alle die geholfen haben! :)
 
Zurück
Oben