Zum Inhalt springen

Druckersteuerung unter Word


Axelander

Empfohlene Beiträge

Hallo Leute,

ich möchte gerne von Access aus ein Word - Dokument drucken. So weit ganz gut, aber bisher kann ich nur auf dem Standarddrucker drucken. Ich möchte aber auch gezielt Drucker, Ein-/Ausgabefächer und den Duplexdruck ansteuern können. Hat jemand eine Idee? Hier mal meine Funktion:

Public Function Word_Datei_Drucken(Datei As String)

Dim oWordApp As Word.Application

Dim oWord As Word.Document

Set oWordApp = New Word.Application

oWordApp.Visible = False

oWordApp.ActivePrinter = "Xerox Doc Centre 460"

Set oWord = oWordApp.Documents.Add(Datei)

oWord.PrintOut False

oWordApp.Quit

End Function

Link zu diesem Kommentar
Auf anderen Seiten teilen

Ich nehme mal an, du arbeitest an einem VB-Projekt.

Der commonDialog ist der Microsoft Common Dialog Control, bei mir in der Version 6.0. und muss über Komponenten... in das Projekt eingebunden werden.

VB kann mit dem Printer-Objekt nur auf den Standartdrucker drucken. Soll ein anderer Drucker als dieser verwendet werden, gibt es im Grunde genommen nur zwei Möglichkeiten:

1. Der andere Drucker wird als Standartdrucker deffiniert. Dann kann man auf dem gewählten Drucker mit den im Druckerdialog vorgenommenen Einstellungen drucken.

Der Nachteil ist, das der ausgewählte Drucker auch für andere Anwendungen dann der Standartdrucker ist. Auf jedem System gibt es nur einen Standartdrucker und die durch den Druckerdialog vorgenommenen Eistellungen sind Systemeinstellungen.

2. den Commondialog so konfigurieren, das er einen hDC (device context) zurückgibt.

mit diesem dc kann man mit VB-Bordmitteln allerdings nicht viel anfangen. Der Druckjob muss dann über die WinAPI gedreht werden. Wie das für Word gehen soll, weiss ich allerdings nicht.

Beispielcode für 1:

On Error Resume Next

CommonDialog1.PrinterDefault = True

CommonDialog1.CancelError = True

CommonDialog1.ShowPrinter

If Err Then

Exit Sub

End If

On Error GoTo 0

Beispielcode für 2:

On Error Resume Next

CommonDialog1.PrinterDefault = False

CommonDialog1.Flags = cdlPDReturnDC

CommonDialog1.CancelError = True

CommonDialog1.ShowPrinter

If Err Then

Exit Sub

End If

hDC = CommonDialog1.hDC 'hDC als long deklariert

On Error GoTo 0

Link zu diesem Kommentar
Auf anderen Seiten teilen

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...