Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1248to1252
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

VBA Tabellenblatt an bestimmten Drucker

VBA Tabellenblatt an bestimmten Drucker
Lunatic82
Hallo zusammen,
ich habe mal wieder ein Problem :) hab zwar schon gesucht aber noch nicht wirklich das richtige gefunden...
Ich habe eine Datei mit 3 Tabellenblättern.
In "Tabelle 1" werden Daten eingegeben aus denen dann in "Tabelle 2" und "Tabelle 3" ein Anschreiben bzw. eine Postkarte erstellt wird.
In "Tabelle 1" sollen zwei Schaltflächen sein mit denen man jeweils "Tabelle2" und "Tabelle3" direkt und ohne weitere Abfragen drucken kann.
Wobei "Tabelle2" auf dem Standard-Drucker (Netzwerkdrucker) ausgegeben werden soll (DINA4)
aber "Tabelle3" soll auf einem anderen Netzwerkdrucker (NAME: XYZ123 an ABC321) ausgegeben werden.
Der Netzwerkdrucker XYZ123 druckt nur im Postkartenformat.
Da meine VBA künste noch nicht so prickelnd sind wende ich mich wieder an EUCH :)
Vielen Dank für eure Hilfe!
Gruß Flo

2
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: VBA Tabellenblatt an bestimmten Drucker
26.01.2012 19:11:24
Lunatic82
Hallo ich habe jetzt folgendes gefunden:
Public Sub Rückschein_Drucken()
Dim Drucker$, I%
On Error GoTo Resume_Drucker
For I% = 1 To 30
Drucker$ = "\\xyz\CanonP4000 auf Ne" & Format(I%, "00") & ":"
Application.ActivePrinter = Drucker$
Sheets("Rückschein").PrintOut Copies:=1, Collate:=True
Exit For
Resume_Drucker:
Resume NxtDrucker
NxtDrucker:
Next I%
End Sub
Funktioniert super aber wie kann ich hier noch etwas einbauen, damit nach dieser Aktion wieder der standard drucker gewählt wird?
Der Standard drucker ist in diesem Fall der \\abc\HP4250 auf Ne?
Vielen DAnk!
Anzeige
AW: VBA Tabellenblatt an bestimmten Drucker
27.01.2012 12:21:20
Heiko
Moin Flo,
müßte so gehen, ungetestet.
Also alten Drucker merken, deine Schleife abarbeiten, alten Drucker wieder einsetzen.
Ist die Schleife wirklich notwendig, der Drucker sollte doch immer den gleichen Namen haben, oder wechselt der Name von 1 bis 30?!
Public Sub Rückschein_Drucken()
Dim strPostkartenDrucker As String, strStandardDrucker As String
Dim intI As Integer, intErrNumber As Integer
' Alte Einstellung sichern
strStandardDrucker = Application.ActivePrinter
For intI = 1 To 30
strPostkartenDrucker = "\\xyz\CanonP4000 auf Ne" & Format(intI, "00") & ":"
On Error Resume Next
Application.ActivePrinter = strPostkartenDrucker
intErrNumber = Err.Number
On Error GoTo 0
If intErrNumber = 0 Then
Sheets("Rückschein").PrintOut Copies:=1, Collate:=True
' Alte Einstellung wieder herstellen
Application.ActivePrinter = strStandardDrucker
Exit Sub
End If
Next intI
End Sub

Gruß Heiko
Anzeige

76 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige