Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Drucker wechseln, pdf-Druck, Drucker zurückstellen

Forumthread: Drucker wechseln, pdf-Druck, Drucker zurückstellen

Drucker wechseln, pdf-Druck, Drucker zurückstellen
Joachim
Hallo,
ich mir folgenden Code zusammengebastelt:
Sub print_pdf()
Dim oldPrinter As String
Dim mywsh
Dim druckers
Dim i
Dim j As Integer
Dim n As Integer
oldPrinter = Application.ActivePrinter
Set mywsh = CreateObject("WScript.Network")
Set druckers = mywsh.EnumPrinterConnections
'prüfen, ob überhaupt ein pdf-Drucker installiert ist
j = 0
n = druckers.Count / 2
For i = 0 To druckers.Count - 1 Step 2
If Not LCase(druckers.Item(i + 1)) Like "*" & "pdf" & "*" Then
j = j + 1
End If
If j = n Then
MsgBox "Bei Ihnen ist leider kein pdf-Drucker installiert!"
Exit Sub
End If
Next
For i = 0 To druckers.Count - 1 Step 2
If LCase(druckers.Item(i + 1)) Like "*" & "pdf" & "*" Then
mywsh.setdefaultprinter druckers.Item(i + 1)
Exit For
End If
Next
ActiveWindow.SelectedSheets.PrintOut Copies:=1, Collate:=True
Application.ActivePrinter = oldPrinter
End Sub
Problem: in Excel wird auf den alten Drucker zurückgestellt, in Windows bleibt aber der Standarddrucker auf free.pdf. Auch ein setdefaultprinter oldprinter bringt nix.
Wie kann ich auch den Standarddrucker zurückstellen?
Gruss
Joachim
Anzeige

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: Drucker wechseln, pdf-Druck, Drucker zurückstellen
24.03.2011 14:07:35
Heinz
Hallo Jochen
Ich habe so gelöst. Damit wird wieder auf den Standard Drucker zurückgestellt.
Gruß
Heinz
Option Explicit
Public Sub PDF_Drucker_Einstellen()
Dim sDruckerAktuell As String
sDruckerAktuell = Application.ActivePrinter 'Aktuellen Drucker merken
Application.ActivePrinter = "FreePDF auf Ne04:" 'Anpassen
HP DeskJet 840C/841C/842C/843C   LPT1    'Standard Drucker Anpassen
ActiveWindow.SelectedSheets.PrintOut Copies:=1
Application.ActivePrinter = sDruckerAktuell
End Sub

Anzeige
AW: Drucker wechseln, pdf-Druck, Drucker zurückstellen
24.03.2011 14:14:21
Joachim
Hallo Heinz,
für Excel stellt sich ja wieder der vorherige Drucker ein (Application.ActivePrinter = oldPrinter).
Aber setdefaultprinter wirkt sich auf Windows und damit auf alle anderen Programme aus. Plötzlich ist FreePdf Standard!
AW: Drucker wechseln, pdf-Druck, Drucker zurückstellen
24.03.2011 14:15:58
Rudi
Hallo,
Auch ein setdefaultprinter oldprinter bringt nix.

Klar, weil oldPrinter den Port enthält.
mywsh.setdefaultprinter Left(oldPrinter, InStr(oldPrinter, " auf Ne") - 1)
Gruß
Rudi
Anzeige
AW: Drucker wechseln, pdf-Druck, Drucker zurückstellen
24.03.2011 14:19:49
Joachim
Danke Rudi,
das war sie Lösung!!
Gruss
Joachim
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige