Live-Forum - Die aktuellen Beiträge
Datum
Titel
24.04.2024 19:29:30
24.04.2024 18:49:56
Anzeige
Archiv - Navigation
1148to1152
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Mit Makro bestimmten Drucker ansteuern

Mit Makro bestimmten Drucker ansteuern
strodti
Hallo Ihr lieben Leut,
ich habe in meiner Exceldatei eine Schaltfläche, die mit folgendem Makro hinterlegt ist:

Sub drucken()
Sheets(Array("Tabelle1", "Tabelle3", "Tabelle7")).PrintOut Copies:=1, Collate:=True
End Sub

Beim Klick werden die entsprechenden Tabellen über den Standarddrucker ausgedruckt. Da wir über mehrere Drucker verfügen, würde ich gern mit einer weiteren Schaltfläche den Druck an einen anderen Drucker übergeben. Ist das möglich und wenn ja - wie?
Ach so, den Code habe ich aus dem Netz - also bitte VBA-Erklärungen nicht zu knapp halten ;-)
Gruß
strodti

5
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Mit Makro bestimmten Drucker ansteuern
25.03.2010 14:32:51
fcs
Hallo strodti,
mit folgenden Ergänzungen.
Gruß
Franz
Sub drucken_auf_P000A6515()
Dim sDruckerAktuell As String
'Aktuellen Drucker merken
sDruckerAktuell = Application.ActivePrinter
'gewünschten Drucker setzen (genaue Bezeichnung ermitteln durch Makro-Aufzeichnen des  _
Druckerwechsels
Application.ActivePrinter = "\\S123456\P0001234 auf Ne08:"
Sheets(Array("Tabelle1", "Tabelle3", "Tabelle7")).PrintOut Copies:=1, Collate:=True
'Drucker wieder auf gemerkten Drucker setzen
Application.ActivePrinter = sDruckerAktuell
End Sub

AW: Mit Makro bestimmten Drucker ansteuern
25.03.2010 14:52:24
strodti
Hallo Franz,
danke für die Antwort. Also, wenn ich alles richtig gemacht hätte, würde wahrscheinlich nicht die Meldung
"Index außerhalb des gültigen Bereichs"
erscheinen.
Mein Code sieht jetzt so aus:
Sub drucken_auf_P000A6515()
Dim sDruckerAktuell As String
'Aktuellen Drucker merken
sDruckerAktuell = Application.ActivePrinter
'gewünschten Drucker setzen (genaue Bezeichnung ermitteln durch Makro-Aufzeichnen des _
Druckerwechsels
Application.ActivePrinter = "OKI C5950 auf Ne01:"
Sheets(Array("Tabelle1", "Tabelle3", "Tabelle7")).PrintOut Copies:=1, Collate:=True
'Drucker wieder auf gemerkten Drucker setzen
Application.ActivePrinter = sDruckerAktuell
End Sub
Die erste Zeile Sub_drucken... habe ich so belassen, oder hat dass einen Einfluss?
Sorry- aber leider sind meine VBA-Erfahrungen erst am Keimen!
Gruß
Tobias
Anzeige
AW: Mit Makro bestimmten Drucker ansteuern
25.03.2010 15:04:05
strodti
Hallo Franz!!!!!!
Es funktioniert. Nicht so elegant wie Dein Code, aber immerhin.
Habe meinen code wie folgt ergänzt:
Sub drucken_farbe()
Application.ActivePrinter = "OKI C5950 auf Ne01:"
Sheets(Array("Deckblatt", "Objektdaten")).PrintOut Copies:=1, Collate:=True
End Sub
Der Tipp mit dem Makroaufzeichnen war super.
Vielen vielen Dank.
Sonnige Grüße
strodti
AW: Mit Makro bestimmten Drucker ansteuern
25.03.2010 15:18:42
fcs
Hallo strodti,
das Problem mit meinem Code-Beispiel war dann wohl, dass in deiner Datei nicht alle der im Array angegebenen Blattnamen vorhanden sind. Die nachfolgende Version sollte dann bei dir funktionieren.
So sparste halt ggf. ein wenig Toner beim Farbdrucker.
Gruß
Franz
Sub drucken_farbe()
Dim sDruckerAktuell As String
'Aktuellen Drucker merken
sDruckerAktuell = Application.ActivePrinter
Application.ActivePrinter = "OKI C5950 auf Ne01:"
Sheets(Array("Deckblatt", "Objektdaten")).PrintOut Copies:=1, Collate:=True
Application.ActivePrinter = sDruckerAktuell
End Sub

Anzeige
AW: Mit Makro bestimmten Drucker ansteuern
25.03.2010 15:27:52
strodti
Hi Franz,
Holzauge sei wachsam - natürlich, Du hast recht. Ich hätte die Blattnamen ändern müssen!!!!
Nochmals vielen Dank.
strodti

9 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige