Anzeige
Archiv - Navigation
1204to1208
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

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

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

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!
Anzeige
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
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

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige