Excel 2010/2013 - VBA - Ausführen eines Ereignisses vor der Druckvorschau

3836
stine

Ich habe viel Zeit damit verbracht, dieses Problem zu lösen und habe viele Foren durchsucht, aber ich habe noch keine Lösung gefunden. Vielleicht kann hier jemand eine Antwort finden ...

Ich möchte etwas Code ausführen (einige Zellen ändern, um die bedingte Formatierung zu verschieben, einige Zeilen auszublenden usw.), bevor der Benutzer die Arbeitsmappe druckt.

In früheren Zeiten wurde dies einfach durch Ausführen des integrierten _BeforePrint-Ereignisses in Excel erreicht:

Private Sub Workbook_BeforePrint(Cancel As Boolean) 'Do something End Sub 

In Excel 2010 und höher kann der Benutzer nach Drücken von Strg-P ​​auf die Druckvorschau klicken oder zu Datei-> Drucken gehen.

Das _BeforePrint-Ereignis wird nur ausgelöst, wenn der Benutzer tatsächlich auf Drucken klickt!

Dem Benutzer wird daher eine Druckvorschau des Arbeitsblatts angezeigt, bevor mein Makro ausgeführt wurde. Das Blatt sieht jetzt nicht gut zum Drucken aus und der Benutzer beginnt, das Blatt zu bearbeiten, weil er nicht weiß, dass das Blatt nach dem Drücken der Drucktaste zum Drucken angeordnet wird.

Hat jemand eine Lösung dafür?

1
Dies ist keine Lösung, scheint jedoch eine gute Lösung zu sein. Http://blog.contextures.com/archives/2011/09/28/excel-2010-print-preview-problems/ jcbermu vor 8 Jahren 0
Wo hast du diesen Code eingegeben? "thisworkbook" -Modul? Raystafarian vor 8 Jahren 0
@Raystafarian Ja, es muss sich in diesem Workbook-Modul befinden, andernfalls wird es beim Druckereignis nicht ausgeführt. stine vor 8 Jahren 0
@jcbermu Danke, leider löst das mein Problem nicht, da die Benutzer immer noch in der Lage sind, File-> Print zu wählen, wie sie es gewohnt sind, und das falsche / schlechte Format sehen. stine vor 8 Jahren 0

0 Antworten auf die Frage