VBA - Seitenumbruch bei entsprechendem Zellwert

Bild

Betrifft: VBA - Seitenumbruch bei entsprechendem Zellwert
von: Klaus
Geschrieben am: 03.07.2015 20:00:39

Geschätztes Forum,
Ich führe in beil. Beispieldatei mehr als 400 Gemeinden mit zugeordneten Straßenabschnittslängen sowie eine jeweils abschließende Zeile mit einer aufsummierten Gesamtlänge. Jeder Gemeindedatenblock soll auf einer eigenen Seite ausgedruckt werden.
Beispieldatei:
https://www.herber.de/bbs/user/98626.xlsm
Um das Einfügen von über 400 Seitenumbrüche nicht manuell abarbeiten zu müssen, habe ich mir ein "bescheidenes" Makro gebastelt, dass in Spalte B zeilenweise nach unten springt und immer dann, wenn die Zelle den Wert "Gesamtlänge" enthält, unterhalb einen Seitenumbruch einfügt.
Leider gibt das Makro nach ca. 50 Loops auf und meldet "Nicht genügend Stapelspeicher", was sicher an meinem dilettantischen Makro liegt.
Lässt sich sicher auch mit einer professionellen Schleife lösen - bitte um Unterstützung.
Danke für jeden Beitrag im Voraus
Klaus

Bild

Betrifft: AW: VBA - Seitenumbruch bei entsprechendem Zellwert
von: Raphael H
Geschrieben am: 03.07.2015 20:55:13
Hallo Klaus,
versuchs mal so


Sub Seitenumbruch()
    Dim i As Long
    Dim ws As Worksheet
    
    Set ws = Sheets("WD_Kostenvorschreibung_Ergebnis")
    For i = 1 To ws.Cells(Rows.Count, 2).End(xlUp).Row
        If ws.Cells(i, 2).Value = "Gesamtlänge" Then
            ws.HPageBreaks.Add before:=Cells(i, 2)
        End If
    Next i
End Sub
Gruess Raphael

Bild

Betrifft: AW: VBA - Seitenumbruch bei entsprechendem Zellwert
von: Klaus
Geschrieben am: 03.07.2015 22:10:08
Hallo Raphael,
SUPER - der Code klatscht die 435 Seitenumbrüche drauf wie nix.
Ich habe den Zeilenzähler für die Zelle, die für die Zuweisung der Seitenumbrüche verwendet wird, noch um 1 erhöht, also ws.HPageBreaks.Add before:=Cells(i + 1, 2) und jetzt sitzen die Seitenumbrüche jeweils 1 Zeile tiefer.
Nochmals DANKE
Klaus

Bild

Betrifft: Bitte owt
von: Raphael H
Geschrieben am: 03.07.2015 23:26:32


 Bild

Beiträge aus den Excel-Beispielen zum Thema "VBA - Seitenumbruch bei entsprechendem Zellwert "