Schreibbüro Richter

Ersatz des Druckdialogs für Word 97, der mit einer Reihe von HP-Druckern nicht funktioniert

Der über das Menü DateiDrucken oder die Tastenkombination Strg P erreichbare Druckdialog von MS Word 97 funktioniert mit einer Reihe von Druckern nicht. Bei manchen Nutzern öffnet sich der Druckdialog zwar, es wird jedoch nicht gedruckt. In anderen Fällen öffnet er sich gar nicht. Bei mir stürzte Word 97 sofort komplett ab, als ich den neu angeschlossenen Farbdrucker benutzen wollte. In allen anderen Programmen arbeitet der Drucker ganz normal, nur Word ist betroffen. Häufig lässt sich der integrierte Druckdialog aufrufen, wenn der HP-Drucker nicht als Windows-Standarddrucker eingestellt ist. Dann kann man mit einem anderen Drucker drucken. Sobald man jedoch im Dialog den HP-Drucker auswählt, stürzt Word ab oder es wird nicht gedruckt.

Sehr interessant und allen Berichten gemeinsam ist jedoch, dass das Drucken über den Druckbutton (Druckersymbol) von Word 97 ganz normal funktioniert. Lediglich der Dialog lässt sich nicht aufrufen. Damit kann man zwar drucken, jedoch nicht einzelne Seiten oder mehrere Exemplare. Dafür habe ich den Dialog als Ersatzdruckmenü in VBA nachgebaut und stelle ihn hier vor.

Druckdialog für Betriebssysteme ab Windows 2000

Diese Version funktioniert auf Betriebssystemen ab Windows 2000 und in 32-Bit-Versionen von Word ab Word 97.

Funktionsumfang und Erläuterung

Charakteristisch ist für den Effekt, dass nach dem Anschluss eines neuen Druckers in Word das Drucken nur über den Druckbutton funktioniert, während aus allen anderen Programmen ganz normal gedruckt werden kann. Sie können das Druckersatzmenü, wie oben beschrieben, ausprobieren. Nach der Installation und dem Start von Word finden Sie eine neue Symbolleiste mit der Schaltfläche für das Druckersatzmenü vor. Beim Klick auf die Schaltfläche öffnet sich das nachgebaute Menü:

Druckersatzmenü mit Auswahl des Druckers

Der Dialog ist in Verhalten und Oberfläche dem integrierten Word-Dialog nachempfunden und stellt die hauptsächlichen Optionen zur Verfügung. Er kann genauso benutzt werden wie der integrierte Word-Dialog.

In Version 1.4 sind nun auch die Optionen zum Sortieren, zum Ausdrucken von Kommentaren, Formatvorlagen und Autotexten sowie das Drucken von geraden/ungeraden Seiten möglich. Weiter können mit der Schaltfläche »Eigenschaften« die Druckereigenschaften zusätzlich geändert werden. Die Verwendung des Buttons »Eigenschaften« kann in der aktuellen Word-Sitzung zu leichten Verzögerungen beim Aufruf und Schließen des Druckdialogs führen, weil der Druck hier nicht im Hintergrund erfolgt, sondern erst komplett zum Drucker gesandt wird. Die Änderungen der Druckereigenschaften wirken sich nicht auf andere Anwendungen aus. Beim nächsten Aufruf von Word arbeitet der Dialog wieder in normaler Geschwindigkeit. Ohne Verwendung der Schaltfläche »Eigenschaften« gibt es diese Effekte natürlich nicht.

Falls Sie häufiger dieselben Eigenschaften des Druckers ändern wollen, ist zu empfehlen, denselben Drucker unter Windows ein zweites Mal zu installieren, die zweite Version mit anderen Eigenschaften, etwa zum Duplexdruck. Bei diesem Vorgehen brauchen Sie im Word-Druckdialog dann nur den entsprechenden Drucker (mit Normaleinstellung oder mit Duplexeinstellung) auszuwählen. Das geht schneller, als bei jedem einzelnen Druckvorgang die Eigenschaften des Druckers einzeln zu ändern.

Wenn der integrierte Dialog mit der Tastenkombination Strg P nicht funktioniert, liegt es nahe, den Shortcut für das Makro DruckmenueAufrufen zu vergeben → Shortcut. Ab Version 1.2 gibt es dafür bereits eine Schaltfläche in der Symbolleiste. Selbstverständlich kann das den Dialog aufrufende Makro auch im Menü Datei untergebracht werden: → Eigenen Menüeintrag erstellen.

Ich habe den Effekt bisher in Word 97 unter Windows 2000 beobachtet und inzwischen auch in Word 2002 (XP) SP 3.

Installation

Die Installation und die Einrichtung als globales AddIn sind am Beispiel des AddIns Datum.dot hier beschrieben. Sie verwenden natürlich die Datei druckersatzauswahl.dot bzw. druckersatzauswahl.zip und gehen ansonsten genauso vor:

Alternative Version für Windows 98

Der oben gezeigte Dialog enthält eine Auswahl der auf dem Computer installierten Drucker, die mit WMI (Windows Management Instrumentation) realisiert wurde. WMI ist in Windows 98 noch nicht default verfügbar, sondern muss bei Bedarf nachinstalliert werden. Erst ab Windows 2000 ist WMI standardmäßig enthalten. Nutzer von Windows 98 können entweder WMI nachinstallieren oder verwenden die folgende alternative Variante des Dialogs:

Druckersatzmenü ohne Auswahl des Druckers

Die Variante unterscheidet sich in der Funktion nicht von der obigen, lediglich die Auswahl des Druckers ist nicht möglich. Die Druckoptionen können festgelegt werden, der Druck erfolgt auf dem eingestellten Windows-Standarddrucker. Das funktioniert auch, wenn der HP-Drucker als Standarddrucker festgelegt ist.

Auch hier sind in Version 1.4 die Druckmöglichkeiten von Word fast vollständig nachgerüstet. Der Dialog zeigt nun auch den aktuell in Windows eingestellten Standarddrucker zur Information an. Damit besteht die Möglichkeit, den Dialog im Bedarfsfall nochmals zu schließen, um zunächst in Windows den Drucker zu ändern.

Liste der bislang bekannten betroffenen Drucker

Bislang sind mir folgende Drucker bekannt, bei denen der Effekt auftritt:

Name des Druckers Betriebssystem Beobachtungen
HP Color LaserJet CM1312nfi MFP

Windows 2000 Professional

Windows XP Professional SP 2

Word 97: Wird der Druckertreiber nur einmal installiert, arbeitet er mit Word 97 normal zusammen. Nach der zweiten Installation des Treibers auf ein und demselben Rechner tritt der Effekt auf, wenn die zweite Installation ausgewählt wird. (Die zweimalige Installation desselben Treibers dient zum bequemeren Auswählen des Duplexdrucks: der erste Treiber mit Voreinstellung normaler einseitiger Druck, der zweite Treiber mit Voreinstellung Duplexdruck.) Der Druckdialog öffnet sich zwar, sobald jedoch der Duplexdrucker »angefasst« wird, stürzt Word komplett ab.
Word 2000, Word 2002 (XP): Ist der HP-Drucker als Windows-Standarddrucker festgelegt, so lässt sich der Druckdialog in Word zwar öffnen, jedoch wird nur genau einmal gedruckt. Bei der nächsten Verwendung des Dialogs wird nur eine Fehlermeldung gedruckt. Schließt man Word und startet es neu, kann man wieder genau einmal drucken. Der Drucken über den Druck-Button hingegen funktioniert ganz normal.
HP Color LaserJet CP1015   Word 97: Bei Auswahl des HP-Druckers stürzt Word komplett ab.
HP Color LaserJet 3505dn Windows XP Home SP 2 Word 97: Beim Aufrufen des Druckdialogs stürzt Word komplett ab.
HP C4340   Word 97: Nach Drucken mit dem Standardbutton, während USB nicht angesteckt war, und dem Löschen des Druckauftrags stürzt Word beim Drucken mit FreePDF nach OK im Druckdialog kommentarlos ab. Nach Einspielen des hier vorgestellten alternativen Druckdialogs funktioniert auch FreePDF wieder.
HP Deskjet D 1560 Windows XP SP 3 Word 97: Normales Drucken geht. Sobald eine Veränderung bei den Druckeinstellungen vorgenommen wird, erscheint eine Windows-Fehlermeldung, die Word abstürzen lässt, selbst wenn man die Veränderung der Einstellung wieder rückgängig macht, bevor man auf Drucken klickt.
HP Deskjet F2180   Word 97
HP Deskjet 930c Windows 2000 Word 2000: Beim Versuch, eine Datei zu drucken, stürzt Word jedesmal ab.
HP Envy Photo 7855   Word 97: »I cannot get any Word 97 document to print to my HP 7855 printer installed today. New printer does show up in Word dialog box and I selected it - but when I do this causes Word to stop responding and I have to close it. All my Excel 97 documents print fine (...) I went back into Word97 and found that if I click on the Print icon on my top toolbar the document printed. Also if I select Tools and print Envelopes and Labels - from that dialog box I can print envelope. So this is making me think something is not working in my File Print dialog box - which I use all the time as it gives me the choice of what page, two-sided, etc. Printing from the toolbar Print icon, it prints whole document without any choices.« Source: Printing problem with old word 97
HP LaserJet 2430 Windows XP Word 97: Der Druckdialog lässt sich aufrufen. Nach Klicken auf OK stürzt Word komplett ab.
HP LaserJet 3005d Windows XP Word 97: »I have been using Word 97 for many years (...) running Windows XP. Everything was working OK until I updated my printer by installing an HP Laserjet 3005d printer (...) I installed the appropriate print drivers and have been able to print to the printer from my editor and web browser, and just about anything else with no problems. Recently I went to print a Word document from within Word 97 only to be met with a crash (...) after which terminating the program brings up another message of the same type and finally the program ends. (...) The interesting thing is that the crash occurs without my actually having to do printing itself, but even occurs if I just try to choose another printer from the Word 97 Print dialog.« Source: Word 97 crashes when printing
HP LaserJet 3600n Windows XP Professional SP 2 Word 97: Beim Aufrufen des Druckdialogs stürzt Word komplett ab.
HP LaserJet 4250 Windows 7 Word 2013: Beim Versuch zu drucken stürzt Word 2013 ab. Mit anderen Druckern auf demselben Laptop druckt Word 2013 anstandslos.
HP Photosmart C4280 Windows XP Professional Word 97: Der Word-Dialog lässt sich öffnen. Das Dokument wird in die Warteschlange geschoben und nicht ausgedruckt. Öffnet man die Warteschlange, steht das Dokument mit 0 kB darin und wird nicht gedruckt.
HP Photosmart C7280 Windows XP Word 97: Word druckt nicht, alle anderen Programme drucken normal.
HP OfficeJet 5610 Vista Word 97: Der Druckdialog lässt sich aufrufen. Bei Auswahl des Druckers stürzt Word komplett ab.
HP Officejet Pro K 5400 Windows XP Word 97: Drucken nur noch über den Druckbutton möglich.
HP P2055dn Windows XP SP 3 Word 97: Dialog lässt sich aufrufen. Auftrag geht in die Warteschlange, wird jedoch nicht gedruckt. Alle anderen Programme drucken ganz normal.
HP PSC 1410 Windows 98 Word 97: Kein Drucken möglich.
HP PSC 2110 Vista Word 97: Der Druckdialog lässt sich aufrufen. Bei Auswahl des Druckers schließt sich Word komplett.
HP 5280 Windows XP Word 97: Druckaufträge werden zum Drucker geschickt, aber nicht gedruckt. Alle anderen Programme drucken normal.

Hier findet sich die Forumsdiskussion im MS Office Forum: Word 97 druckt nicht.

Verwendung der Userform zur Voreinstellung von Druckoptionen mit VBA

Beide Userformen mit dem VBA-Code arbeiten natürlich genauso zuverlässig, wenn der integrierte Word-Dialog normal funktioniert. Die Datei enthält den offenen Quellcode. VBA-Entwickler können den Dialog also auch verwenden, um gewisse Optionen (etwa die Anzahl der Ausdrucke oder den Druckbereich) vor dem Öffnen des Dialogs voreinzustellen, was bei dem integrierten Word-Dialog nicht möglich (bzw. nicht dokumentiert) ist. Die Userform kann um weitere Druckoptionen und Auswahlen beliebig erweitert werden.

Für das Einlesen der auf dem Rechner installierten Drucker stellt VBA kein Printerobjekt zur Verfügung, so dass häufig auf die API zurückgegriffen wird: List of available printer names.

Über VBScript und WMI (Windows Management Instrumentation) gibt es jedoch ebenfalls eine Möglichkeit, alle verfügbaren Drucker einzulesen, die sogar wesentlich kürzer ist und sich in VBA auch verwenden lässt:


strComputer = "."
Set objWMIService = GetObject("winmgmts:\\" & strComputer & "\root\cimv2")
Set colItems = objWMIService.ExecQuery("Select * from Win32_Printer",,48)
For Each objItem In colItems
    WScript.Echo "Name: " & objItem.Name
Next

Weiter ist noch darauf hinzuweisen, dass zum Umschalten des vom Nutzer ausgewählten Druckers in Word nicht die Funktion ActivePrinter verwendet werden darf! Den Rückgabewert kann man zwar getrost verwenden, um den aktuell eingestellten Drucker auszulesen. Seit Word 97 ändert ActivePrinter beim Schreibzugriff jedoch den Windows-Standarddrucker, weswegen man sie für diesen Zweck tunlichst nicht verwenden sollte (der Effekt betrifft nur Word!). Der Drucker kann in Word gefahrlos so eingestellt werden:


With Dialogs(wdDialogFilePrintSetup)
    .Printer = Me.cboDrucker.Value
    .DoNotSetAsSysDefault = True
    .Execute
End With

Die Word-Datei DruckErsatzAuswahl.dot ist eine Dokumentvorlage (Template), die in Word 97 bis Word 2003 verwendet werden kann.

Verwendung ab Word 2007 in 32-Bit-Versionen von Word

Auch in Word 2007 und neueren 32-Bit-Versionen von Word kann die Dokumentvorlage verwendet werden, etwa wenn man den gewohnten Druckdialog übersichtlicher findet als den neuen Backstage-Bereich Drucken oder einfach nur, weil man direkt mit einem einzigen Klick auf das Drucksymbol drucken kann, ohne erst wieder durch den Backstage-Bereich zu »hangeln«. Die Symbolleiste findet sich hier in der Registerkarte Add-Ins des Menübandes. Falls die Registerkarte Add-Ins nicht angezeigt wird, blenden Sie diese ein: Dazu in der Registerkarte Datei auf Optionen und dann auf Menüband anpassen klicken. Im rechten Fenster wählen Sie Hauptregisterkarten aus und setzen das Häkchen bei Add-Ins.

Der Download des AddIns ist kostenlos zur privaten Nutzung. Die Benutzung erfolgt auf eigene Verantwortung. Es werden keine Garantien übernommen.