Standarddrucker

Bild

Betrifft: Standarddrucker
von: JoachimF
Geschrieben am: 25.02.2005 16:50:55
Ich stelle in einer Anwendung über Application.Dialogs(xlDialogPrinterSetup) die Möglichkeit einer Druckerauswahl zur Verfügung. Als zweite Druckoption stelle ich in der Anwendung den Usern die schnelle Möglichkeit zur Verfügung, über activesheet.PrintOut From:=1, To:=1 zu drucken. Leider wird dabei immer auf den zuletzt über application.dialogs(...) eingestellten Drucker gedruckt. Wie kann ich erreichen, daß in diesem Falle auf den Windows-Standarddrucker gedruckt wird? activeprinter hat sich auf die DIALOGS-Einstellung geändert, obwohl der Standarddrucker nicht verändert wurde.
vielleicht ist es ganz einfach, aber ich komme leider nicht drauf!
Vielen Dank schon jetzt für die Hilfe...

Bild

Betrifft: AW: Standarddrucker
von: ransi
Geschrieben am: 25.02.2005 17:57:00
hallo joachim
activePrinter hat lese-und schreibzugriff.
d.h. theoretisch müsste dies gehn:
activePrinter="HP was weiss denn ich"
activesheet.PrintOut From:=1 to 1
ransi
Bild

Betrifft: AW: Standarddrucker
von: JoachimF
Geschrieben am: 28.02.2005 09:31:03
Vielen Dank für die spontane Antwort,
leider hat sie mir nicht helfen können. Ich weiß, dass ACTIVEPRINTER von mir beschrieben werden kann. Mein Problem ist, dass ich mit DIALOGS(xlDialogPrinterSetup) Anwendern eine Druckerauswahl zur Verfügung stelle und danach wieder auf den voreingestellten Standarddrucker drucken möchte, ohne diesen neu belegen zu müssen (da die Anwendung an vielen verschiedenen Plätzen mit verschiedenen Standarddruckern läuft, kann ich nicht im Code den Drucker vorgeben). XlDialogPrinterSetup ändert den Standarddrucker nicht - in Einstellungen/Drucker ist jedenfalls keine Veränderung zu beobachten. Trotzdem druckt ActivePrinter danach den unter XlDialogPrinterSetup eingestellten Drucker.
Ich hoffe, das alles klingt nicht zu durcheinander!!
Vielen Dank
JoachimF
Bild

Betrifft: ActivePrinter in variable
von: ransi
Geschrieben am: 28.02.2005 16:23:44
hallo joachim
speicher doch den activeprinter in einer variablen.
nach dem drucken setzt du die variable wieder als activeprinter.
Option Explicit

Public

Sub t()
Dim drucker
drucker = Application.ActivePrinter
Application.Dialogs(xlDialogPrinterSetup).Show
activesheet.PrintOut From:=1, to 1
Application.ActivePrinter = drucker
'zur kontrolle:
'Application.Dialogs(xlDialogPrinterSetup).Show
End Sub

ransi
Bild

Betrifft: AW: ActivePrinter in variable
von: JoachimF
Geschrieben am: 28.02.2005 16:43:30
Hallo,
stimmt, das ist eine gute Idee! Ich hab's gleich probiert und es läuft fantastisch - danke! Die Dimensionierung der Variablen habe ich allerdings auf STRING gesetzt.
JoachimF
Bild

Betrifft: frreut mich...
von: ransi
Geschrieben am: 28.02.2005 17:02:12
hallo joachim
string ist ok.
war nur zu faul....
ransi
 Bild

Beiträge aus den Excel-Beispielen zum Thema "Eingebettete Tabelle im Powerpoint"