Anzeige
Archiv - Navigation
1044to1048
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

2 verschiedene Kopfzeilen in einer Tabelle

2 verschiedene Kopfzeilen in einer Tabelle
28.01.2009 10:51:00
Horst
Hallo liebe Leute,
ich hab folgendes Problem, ich habe eine Tabelle Bei der ich den Druckbereich variabel gestalte. Zusätzlich möchte ich aber das ab einer bestimmten Seitenanzahl was anderes im Kopf steht. Dazu habe ich einen ansatz hier im archiv gefunden und den auch schon etwas angepasst. Da ich ja aber nicht von anfang an weiß wie viele Seiten den ersten Kopf tragen sollen komm ich da grade nicht richtig weiter. Vielleicht hat hier ja jemand eine Idee.
Druckbereich:

Sub druckbereichtab100000000()
Application.ScreenUpdating = False
If Range("F29") = "00" Then
If Range("M41") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$71"
ElseIf Range("M53") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$113"
ElseIf Range("M65") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$155"
ElseIf Range("M77") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$197"
ElseIf Range("M83") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$239"
End If
End If
If Range("G29") = "00" Then
If Range("M40") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$71"
ElseIf Range("M52") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$113"
ElseIf Range("M64") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$155"
ElseIf Range("M76") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$197"
ElseIf Range("M83") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$239"
End If
End If
If Range("H29") = "00" Then
If Range("M39") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$71"
ElseIf Range("M51") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$113"
ElseIf Range("M63") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$155"
ElseIf Range("M75") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$197"
ElseIf Range("M83") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$239"
End If
ElseIf ("H29")  "00" Then
If Range("M38") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$71"
ElseIf Range("M50") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$113"
ElseIf Range("M62") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$155"
ElseIf Range("M74") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$197"
ElseIf Range("M83") = 0 Then
ActiveSheet.PageSetup.PrintArea = "$AA$30:$AW$239"
End If
End If
Zum Druckbereich ist zu sagen dass ich hier noch einen weiteren anfüge der eben dann den  _
anderen Kopf tragen soll.
Kopfzeile:


Sub Drucken()
'Ansatz von Ramses leicht modifiziert
Dim iPage As Integer
For iPage = 1 To ExecuteExcel4Macro("GET.DOCUMENT(50)")
With ActiveSheet.PageSetup
If iPage = 1 Then
.LeftHeader = _
"&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& _
16Ingenieure"
.CenterHeader = "&""Swis721 Cn BT,Fett""&12Abschaltbedingungen, " & Sheets(" _
Stammdaten").Cells(16, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
.RightHeader = "&D"
Else
.LeftHeader = _
"&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& _
16Ingenieure"
.CenterHeader = "&""Swis721 Cn BT,Fett""&12Abschaltbedingungen, " & Sheets(" _
_
Stammdaten").Cells(17, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
.RightHeader = "&D"
End If
End With
Next iPage
End Sub


Vielen Dank im Vorraus und mit freundlichen Grüßen
euer Horst

4
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: 2 verschiedene Kopfzeilen in einer Tabelle
28.01.2009 22:12:31
Ramses
Hallo
Was willst du denn eigentlich genau machen.
So richtig stige ich da nicht dahinter.
1. Tabelle = Kopfzeile A
2. und weitere Tabellen = Kopfzeile B
oder wie sonst ?
Gruss Rainer
AW: 2 verschiedene Kopfzeilen in einer Tabelle
29.01.2009 09:37:00
Horst
Hallo Rainer,
also ich habe 2 verschiedene Druckbereiche in einer Tabelle.
Druckbereich 1 geht von Seite 1 - x
Druckbereich 2 geht von Seite (x+1) - ...
Druckbereich 1 soll nun in der mitte der Kopfzeile
folgendes stehen haben:
.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ActiveSheet.Cells(3, 2) & vbCrLf & "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(16, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
Druckbereich 2 soll das stehen haben:
.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ActiveSheet.Cells(3, 2) & vbCrLf & "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(17, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
letzendlich ändert sich bloß der eine Zellbezug
Ich hoffe das es nun klarer ist was ich vor habe.
Vielen Dank schonmal für deine schnelle Antwort
Grüße
Horst
Anzeige
AW: 2 verschiedene Kopfzeilen in einer Tabelle
29.01.2009 15:46:48
Horst
hallo so ich hab jetzt folgendes gemacht. Ich hab in Zelle G36 die Anzahl der Seiten im Druckbereich 1 geschrieben. Nun weiß ich nur nicht wie ich richtig einen Bereich definiere. Versucht hab ichs folgendermaßen:

Sub Drucken()
'Ansatz von Ramses leicht modifiziert
ACTIVESHEET.Select
Dim Seite As Integer
Dim x As Range
Set x = Range("F36:G36")
'F36=1 und G36 die Seitenanzahl 1. Druckbereich
For Seite = 1 To ExecuteExcel4Macro("GET.DOCUMENT(50)")
With ACTIVESHEET.PageSetup
If iPage = x Then
.LeftHeader = _
"&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& _
16Ingenieure"
.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ACTIVESHEET.Cells(3, 2) & vbCrLf  _
& "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(16, 16).Value & vbCrLf & ACTIVESHEET.Cells(3, 3).Value
.RightHeader = "&D"
Else
.LeftHeader = _
"&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& _
16Ingenieure"
.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ACTIVESHEET.Cells(3, 2) &  _
vbCrLf & "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(17, 16).Value & vbCrLf & ACTIVESHEET.Cells(3, 3).Value
.RightHeader = "&D"
End If
End With
Next Seite
End Sub


Da kommt eben nur leider der Fehler "Typen unverträglich" in der Zeile:
If iPage = x Then
Ich denk mal das liegt daran das der ausdruck SEite eine einzelne Zahl erwartet.
Vielleicht kann mir jemand weiterhelfen.
Danke im Vorraus
Horst

Anzeige
AW: 2 verschiedene Kopfzeilen in einer Tabelle
29.01.2009 19:43:00
Ramses
Hallo
Das ist doch auch Quark was du da schreibst ! :-)
Was willst du denn erreichen damit
Set x = Range("F36:G36")
Hier weist du x einen ZELLBEREICH zu und dann frägst du die nicht vorhandene Zählvariable
If iPage = x Then
ab ?
Hallo,... ?
Das ist ungetestet aber probier mal
Option Explicit

Sub Drucken()
    With ActiveSheet
        'Einrichten der Seite 1 und drucken von Seite 1
        .PageSetup.LeftHeader = "&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& 16 Ingenieure """
        .PageSetup.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ActiveSheet.Cells(3, 2) & vbCrLf & _
        "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(16, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
        .PageSetup.RightHeader = "&D"
        .PrintOut From:=1, To:=1, Copies:=1, Collate:=True
    
        'Einrichten der anderen Seiten und drucken bis zum ende
        .PageSetup.LeftHeader = "&""Formata Bold,Standard""&20KÜGLER &""Formata Condensed,Standard""& 16 Ingenieure """
        .PageSetup.CenterHeader = "&""Swis721 Cn BT,Fett""&12" & ActiveSheet.Cells(3, 2) & vbCrLf & _
        "Abschaltbedingungen, " & Sheets("Stammdaten").Cells(17, 16).Value & vbCrLf & ActiveSheet.Cells(3, 3).Value
        .PageSetup.RightHeader = "&D"
        .PrintOut From:=2, To:=ExecuteExcel4Macro("GET.DOCUMENT(50)"), Copies:=1, Collate:=True
    End With
End Sub

Gruss Rainer
Anzeige

307 Forumthreads zu ähnlichen Themen

Anzeige
Anzeige
Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige