Registriert seit: 15.10.2016
Version(en): 2016
Guten Morgen Forum,
ich würde gerne beim Audrucken meiner Exceldatei ermitteln, ob die Option
"Gesamte Arbeitsmappe drucken" aktiviert ist.
Das soll im Prinzip so aussehen:
Code:
Private Sub Workbook_BeforePrint(Cancel As Boolean)
If PrintoptionXYZ = "Gesamte Arbeitsmappe" then
...mach was...
end if
End Sub
Ich finde aber keine Möglichkeit, meinem Druckauftrag etwas in der Art zu entlocken.
Kann mir jemand von euch weiterhelfen?
Danke schon mal im voraus.
Gruß Ludwig
Registriert seit: 12.10.2014
Version(en): 365 Insider (64 Bit)
13.07.2019, 11:38
(Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2019, 11:38 von RPP63.)
Moin!
Dürfte schwierig bis unmöglich sein.
Du kannst zwar per VBA steuern, dass die gesamte Mappe gedruckt wird:
- ThisWorkbook.PrintOut oder
- Application.Dialogs(xlDialogPrint).Show Arg12:=3
Allerdings ist es meines Erachtens nicht möglich, das Argument 12 auszulesen.
Gruß Ralf
Gib einem Mann einen Fisch und du ernährst ihn für einen Tag.
Lehre einen Mann zu fischen und du ernährst ihn für sein Leben. (Konfuzius)
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Zitat:Allerdings ist es meines Erachtens nicht möglich, das Argument 12 auszulesen
Es ist auch meines Erachtens unnötig - welchen Vorteil brächte das?
Schöne Grüße
Berni
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
13.07.2019, 13:57
(Dieser Beitrag wurde zuletzt bearbeitet: 13.07.2019, 13:58 von schauan.)
Hallöchen,
Zitat:welchen Vorteil brächte das?
man braucht nicht zum Drucker gehen und die Blätter zählen

(wobei, wenn's Papier alle ist kommt auch nicht alles raus, zumindest bis zum Nachfüllen nicht :22: )
Oder anders gesagt, ich könnte im Zweifel dem Anwender eine Meldung ausgeben, dass da was fehlt ...
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Man könnte natürlich vieles, aber wenn ich von vorneherein das Argument festlege, erübrigt es sich :)
Schöne Grüße
Berni
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
… oder es wird zu viel wenn wer die gesamte Mappe auf einmal drucken will
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)
Registriert seit: 15.10.2016
Version(en): 2016
Hallo Ralf,
danke für deine Hinweise.
Wenn aus deiner berufenen Feder/ Tastatur ein "Geht nicht" kommt,
fürchte ich, dass dem dann auch so ist.
@ allgemein,
die Anwendung, weshalb ich dieses Argument gerne ermittelt hätte, baut auf meinen Thread
https://www.clever-excel-forum.de/Thread...oest-wurde auf:
EnableCalculation auf den "ergebnisempfangenden Blättern" soll im allgemeinen auf FALSE gesetzt sein, außer wenn
a) das Blatt direkt angewählt ist
oder
b) alle Blätter gedruckt werden
In diesen Fällen möchte ich die Berechnung wieder ermöglichen und auch durchführen, so dass da auch das Richtige drinsteht.
Gruß Ludwig
Registriert seit: 02.05.2018
Version(en): Excel 365 & 2016
Hallo Ludwig,
ohne den anderen Thread gelesen zu haben, kannst du doch nach dem Prinzip
Code:
If Bedingung1 = True Then
Argument12=1
Else
Argument12=3
End If
arbeiten. Die Variable setzt du dann in die Druckargumente ein.
Schöne Grüße
Berni
Registriert seit: 10.04.2014
Version(en): 97-2019 (32) + 365 (64)
Hallöchen,
das Problem sitz aber weiterhin vorm Bildschirm. Der User kann auch mit voreingestellter Option selbige noch ändern.

Das andere Problem ist die Abfolge des Druckprozesses.
Wenn ich den Druckdialog per Makro aufrufe, kann ich das Problem bereits vor dem Aufruf des Dialogs dadurch umgehen, indem ich die Einstellung des Blattes prüfe, wenn die Berechnung ausgeschalten ist z.B. das Blatt ausblende, und nach Beenden des Dialoges blende ich das Blatt wieder ein.
Die Abfolge ist dann in etwa so:
- ausblenden
- Dialogaufruf
- Before Print wird durchlaufen
- Dialog erscheint,
- weitere Einstellungen werden vorgenommen
- Mappe wird gedruckt
- einblenden
Wenn ich allerdings direkt über den Drucken-Dialog gehe, greift das nicht mehr. Man könnte ja im BeforePrint versuchen, das Blatt auszublenden … Könnte problematisch werden
. \\\|/// Hoffe, geholfen zu haben.
( ô ô ) Grüße, André aus G in T
ooO-(_)-Ooo (Excel 97-2019+365)