2017-06-28 1 views
0

es scheint, meine "Workbook_BeforePrint (Abbrechen als Boolean)" hält mich vom Exportieren nach PDF. Ich habe festgestellt, dass der PDF-Export funktioniert, wenn ich dieses Sub-Objekt entferne, aber ich möchte meine "Fixes" vor dem Drucken behalten.Aktivieren Sie den Export als PDF in Workbook_BeforePrint Abbrechen

Gibt es eine Möglichkeit, meinen Code neu zu schreiben, um Export nach PDF zu behandeln?

A) Um die "Vor Druck abbrechen" auf Export (kein nach Auswirkungen auf PDF)

oder

B) Machen Sie den Code Arbeit für den Export, behalten die Nachwirkungen meines Code fügt

zu ignorieren
Private Sub Workbook_BeforePrint(Cancel As Boolean) 
    Application.Volatile True 
    Cancel = True 

    Application.EnableEvents = False 
    Application.ScreenUpdating = False 

    'My code 

    Application.EnableEvents = True 
    Application.ScreenUpdating = True 
End Sub 

Antwort

1

ActivePrinter zeigt den aktuellen Druckernamen an (etwas wie Canon MP230 Serie auf Ne03 :). Beim Exportieren nach pdf ändert sich der aktive Drucker entsprechend (an meiner aktuellen Station: Foxit Reader PDF Printer auf Ne01 :).

So vorausgesetzt, Ihr PDF-Drucker ist foxit Sie den folgenden Code verwenden:

... 
if (Left(ActivePrinter, 5) <> "Foxit") then 
    'regular printing, therefore execute your code 
else 
    'pdf-priner, therefore do something else (or nothing) 
end if 
... 
+0

Danke, ich werde von dort personifizieren :) – Doons