Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
 Druckereinstellungen nach Druckerauswahl per VBA |
23.11.2007 15:16:53 |
Hans Kurz |
|
|
|
23.11.2007 15:39:56 |
HansKurz |
|
|
|
28.11.2007 13:40:35 |
HansKurz |
|
|
|
10.12.2007 19:38:58 |
sigi |
|
|
Von:
Hans Kurz |
Datum:
23.11.2007 15:16:53 |
Views:
3148 |
Rating:
|
Antwort:
|
Thema:
Druckereinstellungen nach Druckerauswahl per VBA |
Hallo zusammen,
ich habe folgende Problemstellung:
Ich will an verschiedenen PCs gruppierte Tabellenblätter mit bestimmten Einstellungen auf dem "FreePDF XP" PDF Writer drucken.
Da die PDF Drucker bei den verschiedenen Rechnern auch an verschiedenen Ports liegen benutze ich folgende Funktion um den PDF Drucker zu suchen und anschließend als Standarddrucker einzustellen.
Ich verwende Excel 2002 auf Windows XP Professionel.
Sub ListAllPrinters()
Dim WshNetwork As Object, oPrinters As Object, i%
Set WshNetwork = CreateObject("WScript.Network")
Set oPrinters = WshNetwork.EnumPrinterConnections
For i = 0 To oPrinters.Count - 1 Step 2
Debug.Print oPrinters.Item(i + 1) & " an " & oPrinters.Item(i)
Next
Set WshNetwork = Nothing
End Sub
'Oben werden die installierten Drucker gesucht.
Function ChangePrinter(ByVal strPrinter As String) As Boolean 'Drucker wechseln
Dim WshNetwork As Object, oPrinters As Object, i%
ChangePrinter = False
Set WshNetwork = CreateObject("WScript.Network")
Set oPrinters = WshNetwork.EnumPrinterConnections
For i = 1 To oPrinters.Count Step 2
If oPrinters.Item(i) Like strPrinter Then
WshNetwork.SetDefaultPrinter oPrinters.Item(i)
ChangePrinter = True
Exit For
End If
Next
Set WshNetwork = Nothing
End Function
Sub pdf_konvertieren ()
Dim drucker As String
ChangePrinter "FreePDF XP" 'So kann ich ohne Portangabe den Drucker wechseln
'So weit so gut aber jetzt kommt das eigentliche Problem, die Einstellung des Druckers
With Application
.SendKeys ("%e")
.SendKeys ("%u")
.SendKeys ("%o")
.SendKeys (spb)
.SendKeys ("{Enter}")
.SendKeys ("{Enter}")
End With
Application.Dialogs(xlDialogPrint).Show
Worksheets("Auswahl-Blatt").Select
ChangePrinter drucker
End Sub
Wenn ich den Drucker per application.ActivePrinter auswähle funktioniert die Druckereinstellung über Sendkeys. Bei der Auswahl über ChangePrinter erfolgt der Druck mit Standardeinstellungen.
Ich hoffe, dass jemand eine Idee hat wie ich das Problem lösen kann.
Viele Grüße HansKurz
|
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Bitte geben Sie ein aussagekräftiges Thema an.
Bitte geben Sie eine gültige Email Adresse ein!
- Bitte beschreiben Sie Ihr Problem möglichst ausführlich. (Wichtige Info z.B.: Office Version, Betriebssystem, Wo genau kommen Sie nicht weiter)
- Bitte helfen Sie ebenfalls wenn Ihnen geholfen werden konnte und markieren Sie Ihre Anfrage als erledigt (Klick auf Häckchen)
- Bei Crossposting, entsprechende Links auf andere Forenbeiträge beifügen / nachtragen
- Codeschnipsel am besten über den Code-Button im Text-Editor einfügen
- Die Angabe der Emailadresse ist freiwillig und wird nur verwendet, um Sie bei
Antworten auf Ihren Beitrag zu benachrichtigen
Thema
|
Datum
|
Von Nutzer
|
Rating
|
Antwort
|
 Druckereinstellungen nach Druckerauswahl per VBA |
23.11.2007 15:16:53 |
Hans Kurz |
|
|
|
23.11.2007 15:39:56 |
HansKurz |
|
|
|
28.11.2007 13:40:35 |
HansKurz |
|
|
|
10.12.2007 19:38:58 |
sigi |
|
|