Automatischer Seitenumbruch

Moin,
ich habe eine Excel-Tabelle mit tausenden Zeilen.
Excel soll nun automatisch die Seitenumbrüche machen.
Dabei soll sich Excel auf eine bestimmte Spalte beziehen
und immer wenn der Wert sich ändert soll der Seitenumbruch
gesetzt werden. Die neue Seite beginnt also jeweils mit dem ersten
Datensatz mit neuem Wert in Spalte XY.
___A/B/C/D
1 A 1 3 abc
2 A 2 4 abv
3 A 2 3 awe
4 B 1 5 frt
5 B 2 6 gtz
6 C 5 9 fet
In diesem Beispiel soll Excel mit Zeile 4 und Zeile 6 jeweils auf einer neuen Seite beginnen, weil der Wert in Spalte A sich geändert hat.

Ich hoffe das hat jemand verstanden und noch besser jemand hat eine Idee *g*
Danke im Voraus.

Moin,

Hallo!

ich habe eine Excel-Tabelle mit tausenden Zeilen.

wer nicht :smile:

Excel soll nun automatisch die Seitenumbrüche machen.
Dabei soll sich Excel auf eine bestimmte Spalte beziehen
und immer wenn der Wert sich ändert soll der Seitenumbruch
gesetzt werden. Die neue Seite beginnt also jeweils mit dem
ersten Datensatz mit neuem Wert in Spalte XY.

Mit VBA lässt sich das lösen.
Füge folgende Prozedur in ein Modul im VBA-Editor ein:

Sub SeitenwechselSetzen()
Dim Bereich As Range
Dim zeile As Long
Dim spalte As Long
Set Bereich = ActiveSheet.Range("A1:A18")
With Bereich
spalte = .Columns(1).Column
For zeile = 2 To Bereich.Rows.Count
 If .Cells(zeile, spalte).Value .Cells(zeile - 1, spalte).Value Then \_
 ActiveSheet.HPageBreaks.Add Before:=.Cells(zeile, spalte)
Next zeile
End With
End Sub

Jetzt passt Du noch die Zeile „Set Bereich …“ an und trägst hier den Bezug auf den auf Wertwechsel zu untersuchenden Bereich ein. Achte beim Start des Makro darauf, dass das betroffene Blatt auch aktiviert ist.
Unabhängig von den per Makro gesetzten Seitenumbrüchen wird Excel im Bedarfsfall noch weitere automatische Seitenwechsel einfügen.

Falls Du die per Makro oder andere manuell gesetzte Seitenwechsel wieder löschen möchtest kannst Du folgendes Makro benutzen:

Sub SeitenwechselLöschen()
Dim zähler As Long
For zähler = ActiveSheet.HPageBreaks.Count - 1 To 1 Step -1
 ActiveSheet.HPageBreaks(zähler).Delete
Next zähler
End Sub

Hoffe geholfen zu haben.

Gruß, tester

Moin,

habe zwar noch nie mit sowas gearbeitet,
aber habe es hinbekommen.
Funktioniert genau wie gewünscht.
Vielen Dank !!

MfG J. de Wall