Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

Nur einzelne Worksheets drucken

Forumthread: Nur einzelne Worksheets drucken

Nur einzelne Worksheets drucken
24.02.2005 09:32:00
jan-und-jana
Hallo,
Ich habe in meinem Excel-Workbook, 15 Worksheets (13 sichtbare und 2 verborgene(Einstellungen, Druck))
Wenn das Druck-Event angeschoben wird möchte ich, egal in welchem Worksheet ich mich gerade befinde, dass das Worksheet('Druck') gedruckt wird.Dies soll automatisiert geschehen ohne das ich in dem Drucken-Dialog ein bestimmtes Tabellen-Blatt selektieren muß.
Ich bedanke mich im vorraus für die schnelle Hilfe.
Gruß
jan-und-jana
Anzeige

7
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Nur einzelne Worksheets drucken
Fred
Sheets("Druck").printout
Fred
AW:AW: Nur einzelne Worksheets drucken
24.02.2005 09:55:33
jan-und-jana
Hallo,
vielen Dank für die schnelle Hilfe, hat super geklappt.
Die geschilderte Action ist in der Methode:
'Private Sub Workbook_BeforePrint(Cancel As Boolean)'
implementiert.
Wenn der Befehl Sheets("Druck").printout abgearbeitet wird passiert bei mir folgendes:
- das Druck-Sheet wird an den Standart-Drucker geschickt und gedruckt
- es wird der Druck-Dialog geöffnet
- nachdem ich diesen bestätige durch [ok] wird das ActiveSheet noch gedruckt
Ich möchte nun aber, dass:
- befor das Druck-Sheet gedruckt wird der Druck-Dialog geöffnet wird, so dass ich mir unter Umständen einen anderen Drucker heraus suchen könnte
- und das der Druck-Dialog für das ActiveSheet erst gar nicht erscheint
- sondern nachdem mein Druck-Sheet gedruckt wurde der oben genannte den Vorgang abbricht und zur Arbeitsmappe zurückkehrt
Vielen Dank nochmal für die Mühe,
Gruß jan-und-jana
Anzeige
AW:AW: Nur einzelne Worksheets drucken
Bert

Sub mach_Druck()
Dim ret As Variant
ret = Application.Dialogs(xlDialogPrint).Show
If ret <> False Then
Sheets("Druck").PrintOut
ActiveSheet.PrintOut
End Sub

Bert
AW:AW: Nur einzelne Worksheets drucken
Bert
was vergessen:

Sub mach_Druck()
Dim ret As Variant
ret = Application.Dialogs(xlDialogPrint).Show
If ret <> False Then
Sheets("Druck").PrintOut
ActiveSheet.PrintOut
End If
End Sub

Bert
Anzeige
AW:AW: Nur einzelne Worksheets drucken
24.02.2005 10:34:53
jan-und-jana
Hallo,
vielen Dank auch für diese Antwort, so komme ich Stück für Stück dem Ziel immer näher.
Ich habe die obige Lösung einmal in mein Workbook eingefügt:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim ret As Variant
ret = Application.Dialogs(xlDialogPrint).Show
If ret <> False Then
Sheets("Druck").PrintOut
End If
End Sub

Nun passiert bei mir folgendes:
- ich schiebe das Druck-Event aus dem ActiveSheet("Einstellungen") an
- der Druck-Dialog wird geöffnet ich bestätigen ihn mit [ok]
- es wird zuerst das Sheet("Einstllungen") gedruckt und dann mein gewünschtes Sheet("Druck")
- es öffnet sich erneut der Druck-Dialog
- wenn ich diesen Abbreche passiert nichts weiter
- wenn ich diesen mit [ok] bestätige wird wieder das Sheet("Einstellungen") gedruckt
WO ich hin möchte:
- das nie das Sheet("Einstellungen") (=ActiveSheet) gedruckt wird
- sondern nur das Sheet("Druck") (inkl. des Dialogs)
Vilen dank nochmal für die schnelle Hilfe
Gruß jan-und-jana
Anzeige
AW:AW: Nur einzelne Worksheets drucken
Bert

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim ret As Variant
ret = Application.Dialogs(xlDialogPrint).Show
If ret <> False Then
Sheets("Druck").PrintOut
End If
Cancel = true
End Sub

Bert
AW:AW: Nur einzelne Worksheets drucken
24.02.2005 11:50:49
jan-und-iana
Danke, Danke für die schnelle´n Antworten
Jetzt ist es fasst perfekt, ich habe folgendes geändert:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim ret As Variant
Dim objWorksheetActive, objWorksheetSource As Worksheet
Set objWorksheetSource = ActiveSheet
Set objWorksheetActive = ActiveWorkbook.Worksheets("Druck")
objWorksheetActive.Activate
Application.EnableEvents = False
ret = Application.Dialogs(xlDialogPrint).Show
If ret <> False Then
'        Sheets("Druck").PrintOut
End If
Application.EnableEvents = True
Cancel = True
objWorksheetSource.Activate
Set objWorksheetSource = Nothing
Set objWorksheetActive = Nothing
End Sub

Weil immer das ActiveSheet mit gedruckt wurde.
Vielen Dank nochmal für die schnelle und kompotente Hilfe.
Gruß
jan-und-jana
Anzeige
;

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige