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.

Für Betriebssysteme ab Windows 2000:

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. Ich bin an Rückmeldungen und Erfahrungsberichten interessiert.

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.

Falls auch Benutzer von Word für MacIntosh den beschriebenen Effekt feststellen, können sie ebenfalls mit dieser Variante das Problem beheben. Auf dem MacIntosh bitte die manuelle Installation der Datei DruckersatzMenue.dot durchführen: → Einrichtung als globales AddIn


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 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 PSC 2110 Vista Word 97: Der Druckdialog lässt sich aufrufen. Bei Auswahl des Druckers schließt sich Word komplett.
HP OfficeJet 5610 Vista Word 97: Der Druckdialog lässt sich aufrufen. Bei Auswahl des Druckers stürzt Word komplett ab.
HP Color LaserJet CP1015   Word 97: Bei Auswahl des HP-Druckers stürzt Word komplett ab.
HP PSC 1410 Windows 98 Word 97: Kein Drucken möglich.
HP Deskjet F2180   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 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 LaserJet 3600n Windows XP Professional SP 2 Word 97: Beim Aufrufen des Druckdialogs stürzt Word komplett ab.
HP 5280 Windows XP Word 97: Druckaufträge werden zum Drucker geschickt, aber nicht gedruckt. Alle anderen Programme drucken normal.
HP Photosmart C7280 Windows XP Word 97: Word druckt nicht, alle anderen Programme drucken normal.
HP Color LaserJet 3505dn Windows XP Home SP 2 Word 97: Beim Aufrufen des Druckdialogs stürzt Word komplett ab.
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.

Ich bin an Erfahrungen, Feedback und an Angaben zu den betroffenen Druckern interessiert. Hier finden sich die bisherigen Forumsdiskussionen: Im → MS Office Forum: Word 97 druckt nicht und im → Clever-Forum: Druckproblem mit Word 97 finden sich die aktuellen Diskussionen.


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 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 Drucker kann 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 in Word 2007 und Word 2010

Auch in Word 2007 und Word 2010 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.

Schreibbüro Richter, Georg-Schumann-Str. 8, 04105 Leipzig, Tel.: (03 41) 59 008 95