Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1124to1128
Aktuelles Verzeichnis
Verzeichnis Index
Übersicht Verzeichnisse
Vorheriger Thread
Rückwärts Blättern
Nächster Thread
Vorwärts blättern
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender
Inhaltsverzeichnis

blätter drucken bei bedingung

blätter drucken bei bedingung
Michael
Um ausschließlich versteckte Blätter zu drucken, die eine Bedingung erfüllen, habe ich _
folgenden Code:

Private Sub CommandButton100_Click()
Dim wks As Worksheet
Application.ScreenUpdating = False
For Each wks In Worksheets
If Not wks.Visible And wks.Cells(2, 26) > 0 Then
wks.Visible = xlSheetVisible
wks.Activate
wks.PrintOut
wks.Visible = xlSheetHidden
End If
Next
Application.ScreenUpdating = True
End Sub

diese blätter müssen im header folgende infos/formatierungen haben, die ich in folgender _
prozedur erzeugen will:

Private Sub Workbook_BeforePrint(Cancel As Boolean)
Dim strBearbeitet As String
Dim strTitel As String
Dim strPNR As String
'Nicht fürs Deckblatt "Kalkulation"
If LCase(Me.ActiveSheet.Name)  "kalkulation" Then
strTitel = ""
strBearbeitet = ""
strPNR = ""
strTitel = "&8Titel: " & Chr(32) & Sheets("Kalkulation").Range("D8").Value
strBearbeitet = "&8Druckdatum: " & Date
strPNR = "&8PNR: " & Chr(32) & Sheets("Kalkulation").Range("O12").Value
Me.ActiveSheet.Unprotect "****"
Me.ActiveSheet.PageSetup.LeftHeader = strTitel & Chr(13) & strPNR
Me.ActiveSheet.PageSetup.RightHeader = strBearbeitet
Me.ActiveSheet.PageSetup.CenterHeader = "&8Detailkalkulation" & Chr(32) & "&8&A"
Me.ActiveSheet.Protect "****"
'MsgBox Me.ActiveSheet.PageSetup.LeftHeader
End If
End Sub

es werden zwar die betroffenen blätter gedruckt, jedoch erfolgt keine änderung in den headern. nur wenn ich per seitenansicht vorab aufrufe wird der zweite code korrekt ausgeführt.
kann mir jemand da mal nen tip geben, wie das automatisch ablaufen könnte.
vielen, vielen dank

1
Beitrag zum Forumthread
Beitrag zu diesem Forumthread

Betreff
Benutzer
Anzeige
AW: blätter drucken bei bedingung
30.12.2009 06:17:19
Lutz
Hallo Michael,
versuche es doch mal mit dem abgeänderten Code.
Option Explicit
Private Sub CommandButton100_Click()
Dim wks As Worksheet
Application.ScreenUpdating = False
For Each wks In Worksheets
If Not wks.Visible And wks.Cells(2, 26) > 0 Then
wks.Visible = xlSheetVisible
wks.Activate
Call Seite_ändern
wks.PrintOut
wks.Visible = xlSheetHidden
End If
Next
Application.ScreenUpdating = True
End Sub

Private Sub Seite_ändern()
Dim strBearbeitet As String
Dim strTitel As String
Dim strPNR As String
'Nicht fürs Deckblatt "Kalkulation"
If LCase(ActiveSheet.Name)  "kalkulation" Then
strTitel = ""
strBearbeitet = ""
strPNR = ""
strTitel = "&8Titel: " & Chr(32) '& Sheets("Kalkulation").Range("D8").Value
strBearbeitet = "&8Druckdatum: " & Date
strPNR = "&8PNR: " & Chr(32) & Sheets("Kalkulation").Range("O12").Value
ActiveSheet.Unprotect "****"
ActiveSheet.PageSetup.LeftHeader = strTitel & Chr(13) & strPNR
ActiveSheet.PageSetup.RightHeader = strBearbeitet
ActiveSheet.PageSetup.CenterHeader = "&8Detailkalkulation" & Chr(32) & "&8&A"
ActiveSheet.Protect "****"
End If
End Sub
M.f.G. Lutz
Anzeige

Links zu Excel-Dialogen

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige