Live-Forum - Die aktuellen Beiträge
Anzeige
Archiv - Navigation
1096to1100
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

Formatierung

Formatierung
Ron
Hallo Ecxel-Spezis
Meine Frage:
Innerhalb einer Tabelle habe ich immer ein paar Zeilen zusammengezogen und fortlaufend mit "Header1", "Header2", "Header3", usw. benennt.
Die Abstände wo die Header angezeigt werden können variieren.
Meine Idee ist nun jeweils pro neuem Header-Abschnitt eine neue Seite im ExcelSheet (in der gleichen Tabelle) zu beginnen.
Gibt es da via VB Möglichkeiten dies zu machen?
Danke für mögliche Hinweise/Ideen.
Gruss
Ron
AW: Formatierung
17.08.2009 16:51:09
Wolli
Hallo Ron,
unter der Annahme, dass "Header" jeweils in Spalte A steht, könnte dieses Programm funktionieren:
Sub SeitenUmbruch()
Dim i As Long
'zunächst alle Seitenwechsel löschen
ActiveSheet.ResetAllPageBreaks
'Alle Zeilen im benutzten Bereich auf "Header" prüfen (Schreibweise egal)
For i = 1 To ActiveSheet.UsedRange.Rows(ActiveSheet.UsedRange.Rows.Count).Row
If InStr(LCase(Cells(i, 1)), "header")  0 Then
'Wenn "Header" gefunden, einen Seitenwechsel einfügen.
ActiveSheet.HPageBreaks.Add Before:=Cells(i, 1)
End If
Next i
End Sub
Gruß, Wolli
Anzeige
AW: Formatierung
18.08.2009 08:53:30
Ron
Hallo Wolli
Danke für dein Code. Er funktioniert aber nicht.
Meine Header bestehen immer aus mehreren Zellen.
Header1 = aus den Zellen A1 bis Z5
Header2 = aus den Zellen A19 bis Z23
......
......
Header12 = aus den Zellen A199 bis Z203
usw.
Gibt es auch für diese Konstellation eine Lösung?
Gruss
Ron
AW: Formatierung
18.08.2009 09:36:09
David
Hallo Ron,
wie heißt es so schön: "Ein Bild sagt mehr als tausend Worte".
Hierauf bezogen: Ladt eine Beispieltabelle hoch!
Gruß
David
AW: Formatierung
18.08.2009 10:07:13
Ron
Hallo David
Ja das ist eigentlich logisch. Irgendwie hängt man so im Code und vergisst diese Möglichkeit ganz.
Also nun die Beispiel-Datei dazu. Ist eine vereinfachte Datei.
https://www.herber.de/bbs/user/63896.xlsx
WICHTIG: Es geht nicht darum immer bei jeder Seite diesen Kopf oben zu haben, sondern wenn ein solcher Header eingeblendet wird sollte dieser dazu dienen meine Anliegen zu steuern.
Gruss und schon mal Danke
Ron
Anzeige
AW: Formatierung
18.08.2009 10:31:27
David
Wenn du nun noch ein Format gewählt hättest, was die Mehrheit der Nutzer lesen kann, z. Bsp. Office2003, wäre das (fast) perfekt.
Ich jedenfalls habe hier kein Office 2007.
Gruß
David
AW: Formatierung
18.08.2009 12:01:29
Ron
Hallo David
Ja da sind mir ja auch die Hände gebunden. Wir wurden hier einfach mit Office 2007 bestückt.
Habe jetzt aber eine XLS-Datei hochgeladen
https://www.herber.de/bbs/user/63901.xls
Danke und Gruss
Ron
Seitenumbruch nach Namen?
18.08.2009 09:52:07
Erich
Hi zusammen,
gab es da vielleicht ein Missverständnis?
Ron, sind bei dir die Texte "Header..." die Namen von benannten Bereichen (Names)?
Dann wundert es nicht, wenn diese Texte nicht als Zellwerte in Spalte A auftauchen.
(Davpn war Wolli wohl ausgegangen.)
Wenn das mit den Namen stimmt, probier mal:

Option Explicit
Sub HeaderUmbruch()
Dim namX As Name
ActiveSheet.ResetAllPageBreaks
For Each namX In ActiveWorkbook.Names
If Left(namX.Name, 6) = "Header" Then
If namX.RefersToRange.Parent.Name = ActiveSheet.Name Then _
ActiveSheet.HPageBreaks.Add Before:=Cells(namX.RefersToRange.Row, 1)
End If
Next namX
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Seitenumbruch nach Namen?
18.08.2009 10:14:54
Ron
Hallo Erich
Deine Vermutung ist richtig. Mehrere Zellen wurden jeweils zum Begriff "Header.." zusammengefasst.
Ich habe mal eine Beispiel-Datei hochgeladen.
Danke für den Code. Ich habe in probiert und einen Fehler bei Zeile ... erhalten.
ActiveSheet.HPageBreaks.Add Before:=Cells(namX.RefersToRange.Row, 1)
Gruss
Ron
AW: Seitenumbruch nach Namen?
18.08.2009 10:24:25
Erich
Hi Ron,
bei mir gab es keinen Fehler. Welcher Fehler (Nr, Beschreibung) tritt denn auf?
Deine xlsx-Mappe kann ich nicht öffnen - ohne xl2007(-Konverter).
Kannst du die Mappe noch mal als xls hochladen?
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
Seitenumbruch nicht vor Zeile 1!
18.08.2009 12:31:19
Erich
Hi Ron,
dieses Rätsel ließ sich leicht lösen: Dein erster Header beginnt in Zeile 1 - und vor Zeile 1 kann man einfach
keinen Seitenumbruch einfügen.
Hier wird das abgefangen:

Option Explicit
Sub HeaderUmbruch()
Dim namX As Name
ActiveSheet.ResetAllPageBreaks
For Each namX In ActiveWorkbook.Names
If Left(namX.Name, 6) = "Header" Then
If namX.RefersToRange.Parent.Name = ActiveSheet.Name And _
namX.RefersToRange.Row > 1 Then _
ActiveSheet.HPageBreaks.Add Before:=Cells(namX.RefersToRange.Row, 1)
End If
Next namX
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: Seitenumbruch nicht vor Zeile 1!
18.08.2009 14:31:46
Ron
Hallo Erich
Danke dein Code funktioniert soweit wie gewünscht.
Ein ganz kleines aber wirklich kleines :-)) Problem habe ich noch.
Da ich nicht weiss wieviele Einträge nach dem Header kommen werden bei mir erst wieder ein Header eingeblendet wenn ein "neuer" Header notwendig ist.
Somit geht meine Frage dahingehend, kann man beim Einblenden nur die "eingeblendeten" Header nutzen um deine Funktion entsprechend nutzen können.
Danke für einen möglichen Tipp.
Gruss
Ron
kein Seitenumbruch, wo ausgeblendet
18.08.2009 16:50:11
Erich
Hi Ron,
die "Header" kann man eigentlich nicht aus- oder einblenden. Ich vermute, du blendest die Zeilen aus oder ein,
in denen die Header stehen. Wenn dem so ist, sollte das helfen:

Option Explicit
Sub HeaderUmbruch()
Dim namX As Name, lngRow As Long
ActiveSheet.ResetAllPageBreaks
For Each namX In ActiveWorkbook.Names
If Left(namX.Name, 6) = "Header" Then
lngRow = namX.RefersToRange.Row
If namX.RefersToRange.Parent.Name = ActiveSheet.Name And _
lngRow > 1 And Not Rows(lngRow).Hidden Then _
ActiveSheet.HPageBreaks.Add Before:=Cells(namX.RefersToRange.Row, 1)
End If
Next namX
End Sub
Rückmeldung wäre nett! - Grüße von Erich aus Kamp-Lintfort
Anzeige
AW: kein Seitenumbruch, wo ausgeblendet
19.08.2009 08:38:41
Ron
Hallo Erich
Da staune ich immer wieder. Echte Excel-Cracks seit ihr.
Auch deine Analyse treffsicher und immer eine Lösung dazu.
Dein Code ist genau das was ich mit meiner Frage gemeint habe.
Vielen Danke für deine tolle Hilfe und einen schönen Tag
Gruss
Ron

Beliebteste Forumthreads (12 Monate)

Anzeige

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Anzeige