Office: (Office 2013) Druckereigenschaften per VBA einstellen

Helfe beim Thema Druckereigenschaften per VBA einstellen in Microsoft Word Hilfe um das Problem gemeinsam zu lösen; Hallo in die Runde, ich stehe womöglich vor einem größeren Word-Problem. In unserem Büro haben wir neue Drucker bekommen, die standardmäßig... Dieses Thema im Forum "Microsoft Word Hilfe" wurde erstellt von RookieOne, 27. Juli 2014.

  1. Druckereigenschaften per VBA einstellen


    Hallo in die Runde,

    ich stehe womöglich vor einem größeren Word-Problem.

    In unserem Büro haben wir neue Drucker bekommen, die standardmäßig doppelseitig und in Graustufen drucken.

    Nun will man aber hin und wieder wichtige Dokumente in Farbe drucken.

    Gibt es eine Möglichkeit, per VBA oder Makro auf die Druckereigenschaften zu gehen und dort temporär den Farbmodus auf Farbdruck zu stellen?

    Aus Excel kenne ich die PageSetup.BlackAndWhite-Eigenschaft. Jedoch habe ich in Word 2013 keine Entsprechung gefunden (verstehe da einer Microsoft ...).

    Vielleicht hat jemand hier im Word-Forum einen guten Tipp.

    Dank & Gruß, Daniel

    :)
     
    RookieOne, 27. Juli 2014
    #1
  2. Würde mich grundsätzlich auch mal interessieren.
    Ob man das praktisch verwenden kann, ist die andere Frage. Ich habe meinen Duplex-Farb-Drucker mit 4 virtuellen Druckern ergänzt, um jeweils einen für Farbe, Duplex usw. parat zu haben. VBA muss dann nur noch den Drucker auswählen.
    Eine Einstellung der einzelnen Druckermerkmale aus VBA wäre kaum möglich, weil es meist um 3-4 verschiedene druckerspezifische Parameter und nicht nur um einfach Farbe/sw geht.
    Viele Grüße, Halweg
     
    halweg, 29. Juli 2014
    #2
  3. Hallo Daniel,
    Duplex als Standard mag ja noch angehen, aber standardmäßig den Farbdruck auf einem Farbdrucker zu deaktivieren, finde ich ungewöhnlich.

    Zumindest für das temporäre Umschalten Duplex/Simplex hat Michael Schwimmer für Excel-VBA eine Lösung (siehe hier) entwickelt, die sich auch in Word integrieren lässt.
     
    Zuletzt von einem Moderator bearbeitet: 28. Januar 2021
    haklesoft, 29. Juli 2014
    #3
  4. Druckereigenschaften per VBA einstellen

    Guten Morgen,

    auch bei mir im Büro ist das Color-Multifunktionsgerät (KONICA MINOLTA C554Series) standardmäßig auf doppelseitig und S/W eingestellt. Es soll wohl Kosten sparen.

    An die Anwender, die vor jedem Druck diverse Einstellungen ändern müssen, um einen anständigen Ausdruck zu erhalten, hat dabei mal wieder keiner gedacht.

    How ever, wir haben diverse Versuche gestartet die Druckereigenschaften per VBA zu steuern. Unter Windows XP und Office 2003 hat das auch mit SENDKEYS funktioniert. Nach der Umstellung auf Windows 7 erkennt Word/VBA jedoch nicht mehr, dass das Eigenschaftenfenster des Druckers (= Einstellungen im Druckertreiber) aufgeht. Selbst das Warten vor der Ausführung der SENDKEYS-Befehle funktioniert nicht, da VBA nicht erkennt wohin es sie schicken soll. Das Ergebnis dieser ungezielt abgegebenen SENDKEYS-Befehle ist aber manchmal recht lustig.

    Fazit:
    Du kannst die Druckeinstellungen in Word/VBA anpassen - aber eben nur die Optionen, die du nach Druck auf STRG+P siehst.

    Trotz diverser Suchen sind auch wir erst heute auf die Lösung von Michael Schwimmer gestoßen und werden mal versuchen sie für andere Druckereinstellungen anzupassen.

    Sollten wir es schaffen, poste ich die Lösung. Sollte jemand schon eine andere API-Druckersteuerungslösung haben, wäre ich natürlich auch sehr interessiert.

    Bis dahin

    Stefan
     
    stefan1975, 30. Juli 2014
    #4
  5. Hallo, haklesoft,

    so ungewöhnlich ist die Voreinstellung auf s/w-Druck nicht; bei uns sollen damit Kosten gespart werden (btw: @stefan: Wir haben hier auch im Büro Minolta C554e neu ausgerollt bekommen).

    PageSetup.BlackAndWhite war falsch gedacht; ich will ja nicht das Dokument schwarz-weiß drucken; auch ein Setzen auf false würde ja in Word nichts bringen.

    Stefans Ansatz mit Sendkeys habe ich auch verfolgt; mit dem selben Ergebnis.

    Bei Minolta selbst gibt es ein „Developer Program“: https://dsp.konicaminolta.eu/beu/dsp...f/nav?OpenForm

    Es bietet u.a. Zugang zu „Open APIs“.

    Ich hatte mich da vergangene KW registriert, aber bis dato noch keinen Zugang erhalten.

    Ich melde mich, sobald ich hier Neues erfahre.

    @stefan: Kannst du ggf. deinen Sendkeys-Ansatz hier im Thread posten?

    Gruß, Daniel
     
    RookieOne, 30. Juli 2014
    #5
  6. Hallo,

    kommt auch auf den Druckertreiber an. In dem von Kyocera z. B. kann man Profile mit passenden Einstellungen erstellen und bei Bedarf jeweils umschalten.
     
    haklesoft, 30. Juli 2014
    #6
  7. Hallo zusammen,

    so sieht mein Sendkeys-Ansatz aus:

    Code:
    Damit wird der Druck-Dialog (Strg+P)geöffnet und das Druckereigenschafts-Fenster wird aufgerufen. Jedoch geht es in diesem Dialog-Fenster mit dem Sendkeys-Makro nicht weiter :-(

    Unterdessen habe ich in der Fachliteratur einen Hinweis gefunden. Im Buch „Microsoft Word Programmierung - Das Handbuch“ http://*******/1n5xp4v wird bemerkt:
    Es wird auf die Windows-API-Schnittstelle verwiesen, die ein findiger MVP ausgenutzt hat. Sein Ansatz ist hier zu finden: http://*******/WOp8N6 (die Original-URL ist nicht mehr aktiv; daher hier eine archivierte Seite).

    Gruß, Daniel
     
    RookieOne, 30. Juli 2014
    #7
  8. Druckereigenschaften per VBA einstellen

    Hi,

    ich würd die Finger lassen von Sendkeys. Nach Sendkeys ist auf meiner Tastatur grundsätzlich NumLock ausgeschaltet. Das ist ein dokumentierter BUG von M$.

    Ich weiche mitlerweile komplett auf API aus, alle anderen Sendkeys-Versuche (DoEvents etc.) waren Müll und haben zu keinem vernünftigen Ergebnis geführt *entsetzt .

    Gruß
    TT
     
    TomTom2010, 30. Juli 2014
    #8
  9. \@RookieOne

    Hier unser Sendkeys-Ansatz
    Code:
    Wie bereits berichtet funktionierte dieser Ansatz nur bis zur Umstellung auf Win7.
    Eigenartigerweise musste ich den Druckdialog 2x öffnen um ihn steuern zu können. Die VBA-Pausen haben wir ohne Erfolg an diversen Stellen eingebaut und durchprobiert.

    Viele Grüße

    Stefan
     
    stefan1975, 30. Juli 2014
    #9
  10. Ich bediene meine Druckdialoge auch manchmal mit Send-Befehlen (allerdings über AHK, diese Skriptsprache ist für so was besser geeignet, weil sie WINWAIT und andere Befehl hat).
    Aber trotzdem würde mich interessieren, warum nicht einfach ein neuer virtueller Drucker installiert werden kann, in dem die gewünschten Merkmale voreingestellt sind.
    Viele Grüße, Halweg
     
    halweg, 30. Juli 2014
    #10
  11. \@halweg:

    bei uns stellt sich die IT-Abteilung quer und wir als Anwender haben kein Recht virtuelle Drucker zu erzeugen. Uns bleibt nur die Druckeinstellungen des Geräts vor jedem Ausdruck zu kontrollieren und ggf. anzupassen.

    Selbst das globale Umstellen der Druckereigenschaften in Windows (Start|Geräte und Drucker) hält bei uns nicht lange, da die Druckereigenschaften mehrmals am Tag auf die Standardwerte zurückgesetzt werden.

    Viele Grüße
    Stefan
     
    stefan1975, 31. Juli 2014
    #11
  12. Hallo Daniel,

    mit dem von Dir in #7 gefundenen Ansatz ist es möglich, sowohl Duplex als auch Color für den Ausdruck umzuschalten. Nur zwei Kleinigkeiten bei den PrinterProperties waren im Modul-Code anzupassen, da meine lokalen Printernamen keinen Porthinweis enthalten: Code:
    Mit Duplex klappt die Umschaltung einwandfrei; Color kann ich zwar setzen aber mangels passender Hardware nicht testen.
     
    haklesoft, 31. Juli 2014
    #12
  13. Druckereigenschaften per VBA einstellen

    Hallo,

    ich habe versucht die Lösung von Michael Schwimmer zum Laufen zu bekommen, es aber nicht geschafft.
    Bei uns (Win7 mit Office 2003) bricht die Abarbeitung immer beim Füllen der eigenen DEVMODE-Struktur (z.B. in der Zeile "CopyMemory udtDevMode, ByVal lngPtrDevMode, Len(udtDevMode)") ab. Es gibt jedoch keine Fehlermeldung sondern die ganze Excelanwendung bricht zusammen.

    Hattet ihr das Problem auch? Wenn ja, wie habt ihr es gelöst?

    Viele Grüße

    Stefan
     
    stefan1975, 11. August 2014
    #13
  14. Hallo Stefan,

    für die Schwimmer-Lösung habe ich auf dieser Maschine kein Beispiel parat. Ich dachte, wir suchen eine Lösung für Word und nicht für Excel. Unter Word-VBA ist der Trick mit dem temporären Druckerwechsel nicht nötig.

    Der von Jonathan West gezeigte Weg für die Druckausgabe innerhalb einer Word-Anwendung im Duplex-Mode unter Win7/64-Word2010/32 klappt einwandfrei.

    Im Modul habe ich die Color- und Quality-Sachen dringelassen habe, obwohl ich sie nicht benutze. Der Aufruf erfolgt innerhalb einer Anwendung z. B. so (Pseudocode):
    If bDuplex = True Then
    PrintDuplexBooklet
    Else
    ActiveDocument.PrintOut Background:=False
    End If Code:
     
    haklesoft, 11. August 2014
    #14
  15. Habe gerade mal mit beiden Mappen aus dem Download von Michael Schwimmer mit Excel die Duplex-Umschaltung probiert:

    Win7/64-Excel2010/32: Druckeränderungen.xlsm funktioniert einwandfrei

    WinXP-Excel2002: Druckeränderungen.xls funktioniert, allerdings dauert es gefühlte 10 Sekunden, bis die Umschaltungen abgeschlossen sind.
     
    Zuletzt von einem Moderator bearbeitet: 28. Januar 2021
    haklesoft, 11. August 2014
    #15
Thema:

Druckereigenschaften per VBA einstellen

Die Seite wird geladen...
  1. Druckereigenschaften per VBA einstellen - Similar Threads - Druckereigenschaften VBA einstellen

  2. VBA Kopieren von Zelleninhalte in Textbox

    in Microsoft Excel Hilfe
    VBA Kopieren von Zelleninhalte in Textbox: Hallo zusammen, ich habe diesen VBA Code aus diesen Forum genommen und hätte ein paar Fragen dazu. Der Code wurde von Beverly zur verfügung gestellt. Private Sub...
  3. VBA - Wenn Eintrag in Spalte vorhanden dann aktualisieren, sonst neue Zeile

    in Microsoft Excel Hilfe
    VBA - Wenn Eintrag in Spalte vorhanden dann aktualisieren, sonst neue Zeile: Hallo an Alle, ich habe ein Problem und finde keine Lösung in den Foren. Ich hoffe, dass mir jemand hier helfen kann. Ich habe in einer Datei zwei Blätter - eins "TC_Template" ist optisch wie...
  4. VBA Textbox macht was sie will

    in Microsoft Excel Hilfe
    VBA Textbox macht was sie will: Hallo, ich bin ein Neuling bei VBA auch Excel habe ich bisher nie so intensiv benutzt wie in den letzten Wochen. Ich sitze jetzt schon länger vor einem Problem, welches ich weder mit Hilfe des...
  5. Semikolon via VBA in einzelne Zellen separieren

    in Microsoft Excel Hilfe
    Semikolon via VBA in einzelne Zellen separieren: Hallo zusammen, ich benötige eure Hilfe. Ich habe eine Zelle mit mehr als 260 Informationen. Die sind durch ein Semikolon getrennt. Bis jetzt habe ich diese über die Funktion "Daten-Text in...
  6. VBA - Kopf- und Fußzeilen Anpassen mit Logos

    in Microsoft Excel Hilfe
    VBA - Kopf- und Fußzeilen Anpassen mit Logos: Hallo zusammen, ich bin auf der Suche nach einer Lösung mehrere Excel Dokumente (Viele Anhänge, die ich immer wieder anpassen muss, die aber nicht in einer Datei gespeichert werden können/...
  7. VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst"

    in Microsoft Excel Hilfe
    VBA Code " Zeilenhöhe bei Verb. Zellen Funktioniert fasst": Hallo Leute dieser Code für Zellenhöhe bei Verbundenen Zellen Funktioniert fast. Ich habe ein Code von jemand anderem bekommen der nicht in einem Forum ist. Ich kann gerade diese Person nicht...
  8. Druckereigenschaften speichern

    in Microsoft Excel Hilfe
    Druckereigenschaften speichern: Hallo zusammen, ich suche eine Lösung zum Einstellen der Drucker und Druckereigenschaften. Ich brauche jeweils 3 verschiedene Drucker und muss die immer mühsam anwählen, bei einem Drucker muss ich...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden