Grüezi mitenand
Mein Programm verwendet 3 verschiedene Berichte und 3 verschiedene Papiesorten mit verschiedenen Formaten (A4/A5)
Ich arbeite mit zwei Zweischachtdruckern (neuer Brother und uralt Minolta Dialta)
Jeden Zweischachtdruncker habe ich in Windows je als 2 separate Drucker definiert (einmal mit oberem und einmal mit unterem Schacht)
Mein Windows Standarddrucker ist der Original Adobe pdf "Drucker"
Acc 2007
Win XP
Verhalten der Drucker:
Die 2 physisch vorhandenen Drucker lassen sich mittels untenstehendem Code zuverlässig auswählen.
Egal welchen Drucker ich mit oberem oder dem unteren Schacht ansteuere, er druckt fast imeistens aus dem falschen Schacht. (kaum reproduzierbar)
Meine entscheidenen Codezeilen:
Private Sub AusDrucken(BerichtName$, WhereCode$)
Dim Drucker$, AlterDrucker$
'Holt in einem Externen Sub den, dem Bericht zugeordneten Drucker
Drucker = DruckerWählen(BerichtName)
' Alten Standard Access Drucker sichern
AlterDrucker = Application.Printer.DeviceName
' Neuen Standarddrucker setzen
Application.Printer = Application.Printers(Drucker)
'Auf Standarddrucker ausdrucken
DoCmd.OpenReport BerichtName, , , WhereCode
'Wieder Original Standarddrucker zurücksetzen
Set Application.Printer = Application.Printers(AlterDrucker)
Exit Sub
Wer kann mir sagen wie ich die Drucker dazu bringe jeweils aus dem in Windows-Druckernamen festgelegten Schacht zu drucken
Schöne Grüsse aus dem sonnigen Appenzelllerland
Ernst
Ich habe eine Beschreibung für diese Problem gefunden. Vielleicht hilft diese:
http://www.ms-office-forum.net/forum/showthread.php?t=64462
Grüezi
FMS beschreibt im Grunde genommen mein Problem.
ZitatGünther Kramer sagt:
Es gibt aber eine andere Lösung!
Leg für jeden Schacht einen eigenen Druckertreiber im System an. Im Druckertreiber legst Du den Standardausgabeschacht fest.
Dies ist genau der Weg den ich ihn bereits erfolglos versucht habe.
http://www.access-paradies.de -> Software-Katalog -> AP-Druck-Manager Der Link existiert so nicht.
Ich nehme an Du meintest:
http://www.access-paradies.de/tools/ap_druck_manager.php
Die Antworten dort bringen mich auch nicht viel weiter, Standarddrucker auslesen und neu setzen mache ich mit meinem Code schon in ähnlicher Weise.
Trotzdem herzlichen Dank für Deine Bemühungen
Hallo,
überprüfe, ob im Berichtsentwurf unter "Seite einrichten" der Haken bei "Standarddrucker" (noch) gesetzt ist.
Grüezi mitenand
Codeausschnitt mit Beobachtungen:
' Drucker ist eine Stringvariable mit dem gewünschten Drucker
' Beobachtung A
Stop
AlterDrucker = Application.Printer.DeviceName
Application.Printer = Application.Printers(Drucker)
' Beobachtung B
Stop
DoCmd.OpenReport BerichtName, , , WhereCode
' Beobachtung C
Stop
Set Application.Printer = Application.Printers(AlterDrucker)
' Beobachtung D
Stop
Exit Sub
Beobachtungen: (Wenn ich den Bericht in der Entwurfsansicht öffne und Seite einrichte wähle)
Bei Beobachtung A
Standarddrucker: ja
Grösse : A4
Im Dropdownfeld ist die Auflistung der Formate des Windows Standarddruckers abgelegt.
Quelle: Automatisch wählen
Soweit ich beurteilen kann alles richtig.
Beobachtung B
Spezieller Drucker: ja (es wird der gewünschte Drucker angezeigt)
Es kann aber auch mal der Standarddrucker angezeigt werden. Wobei die Auflistungen in der Dropdownfeldern Grösse und Quelle immer die Werte des gewünschten Druckers zeigen.
Grösse: A4 (richtig)
Im Dropdownfeld ist die Auflistung der Formate des gewünschten Druckers abgelegt.
Quelle:
Es wir immer Auto angezeigt (es sollte aber der Schacht gezeigt werden so wie er im Treiber des Druckers festgelegt ist)
Wenn Spezieller Drucker: angezeigt wird so wird der richtige Drucker angezeigt.
Beobachtung C
der Ausdruck geht immer an den richtigen Drucker aber meistens aus dem falschen Schacht
Wenn ich jetzt den Report in der Entwurfsansicht öffne und bei Seite Einrichten schaue sehe etwas GANZ MERKWÜRDIGES:
Standarddrucker: ja
Grösse: A4 (richtig)
Im Dropdownfeld ist die Auflistung der Formate des gewünschten Druckers abgelegt.
Quelle:
Auto mit der Auflistung der Schächte des gewünschten Druckers
Drucker:
Es wird der gewünschte Drucker angezeigt.
Wenn ich nun das Fenster Seite Einrichten schliesse und gleich wieder öffne so ist alles wie oben beschrieben AUSSER:
Spezieller Drucker: ja (der gewünschte Drucker wird angezeigt) (ja und nein wechseln sich bei jedem öffnen ab)
Punkt D Es ist wieder alles wie bei Punkt A
Wer hat da eine Erklärung, bei mir herrscht EDV (E)nde (D)er (V)ernunft
Gruss
Ernst