Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Seitenumbruch nach bestimmten Kriterien

Seitenumbruch nach bestimmten Kriterien
10.08.2004 09:12:34
Mathias
Hallo,
ich hatte schon mal gefragt aber die Frage ist wohl nicht mehr einsehbar.
Ich habe eine Tabelle in der Kundendaten aufgeführt sind. In Spalte B stehen ab Zeile 30 die Kundennummern. Ich bräuchte ein Makro welches nach jeder Kundennummer einen Seitenwechsel (Umbruch) einfügt. D.h. jeder Kunde soll auf ein bzw. mehrere Blätter ausgedruckt werden können. Es soll vermieden werden, daß auf einem Blatt zwei Kunden-(daten) stehen.
Danke für die Hilfe!
Gruss
Mathias
Anzeige

9
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Seitenumbruch nach bestimmten Kriterien
IngoG
Hallo Matthias,
versuchs mal so:

Sub Seitenwechsel_bei_Gruppenwechsel()
Dim Zelle As Range
' alle Zellen in Spalte a ab zeile 5 durchsuchen, ob ein Gruppenwechsel stattfindet
' erste Datenzeile ist hier Zeile 4!!!
' evt. sollte erst sortiert werden nach Spalte a
For Each Zelle In ActiveSheet.Range("A5:a" & ActiveSheet.Range("a65536").End(xlUp).Row)
If Zelle <> Zelle.Offset(-1, 0) Then
ActiveWindow.SelectedSheets.HPageBreaks.Add Before:=Zelle
End If
Next Zelle
End Sub

Das macro muß hier manuell angestossen werden.
es greift auf die Spalte a ab zeile 4 zu, wenn leerfelder in spalte a stehen wird dafür eine leerseite erzeugt.
Du mußt also noch etwas an Deine Datei anpassen, sollte aber nicht so problematisch sein.
ansonsten melde dich einfach nochmal
Gruß ingo
PS eine Rückmeldung wäre nett...
Anzeige
AW: Seitenumbruch nach bestimmten Kriterien
Mathias
Hallo Ingo,
der Ansatz ist gut - vielen Dank erstmal.
Ich muss mich aber ergänzen. Es stehen die Kundennummern in einer Spalte (B). Daneben (ab Spalte C) stehen aber relevante Kundendaten die mit auf das entsprechende(n) Blatt ausgegeben werden sollen.
D.H. Leerstellen nach einer jeweiligen Kundennummer sollen zwar für den Seitenwechsel ignoriert werden, aber nicht für die jeweilige Selektion.
Anzeige
vielleicht so?
IngoG
Hallo nochmal,
wenn ich Dich richtig verstanden habe, setht nicht in jeder Zelle in B:B etwas und es soll ein seitenwechsel stattfinden, wenn in splte B ein neuer wert erscheint...
Dann sollte folgender code funzen:

Sub Seitenwechsel_bei_Gruppenwechsel()
' Erste Datenzeile bei Zeile 4!!!
Dim Zelle As Range
Dim zellealt As Object
Dim ii%
For ii = ThisWorkbook.ActiveSheet.HPageBreaks.Count To 1 Step -1
ThisWorkbook.ActiveSheet.HPageBreaks(ii).Delete
Next ii
Set zellealt = ThisWorkbook.ActiveSheet.Range("B4")
For Each Zelle In ActiveSheet.Range("B5:a" & ActiveSheet.Range("B65536").End(xlUp).Row)
If Zelle <> zellealt And Zelle <> "" Then
ThisWorkbook.ActiveSheet.HPageBreaks.Add Before:=Zelle
Set zellealt = Zelle
End If
Next Zelle
End Sub

Gruß Ingo
PS eine Rückmeldung wäre nett...
Anzeige
AW: vielleicht so?
Mathias
Hallo Ingo,
genau - in der Spalte B steht nicht immer ein Wert. Hier steht immer mal eine Kundennummer, die restlichen Werte stehen ab Spalte C bis....
Vor jeder Kundennummer soll ein Seitenwechsel eingefügt werden.
Der neue Code funkt. leider nicht.
Bis zum ersten Seitenwechsel klappt es, dann werden die Seitenwechsel nicht mehr eingefügt.
Gruß, Mathias
Anzeige
AW: vielleicht so?
IngoG
Hallo Mathias,
sorry my fault,
versuch mal die for-schleife so abzuändern:
For Each Zelle In ActiveSheet.Range("B5:B" & ActiveSheet.Range("B65536").End(xlUp).Row)
Ich hatte bei mir die spalte a als referenzzeile und beim anpassen ein "A" vergessen...
Gruß Ingo
AW: vielleicht so? -> Leider nein!
Mathias
Hallo Ingo,
das "a" wars nicht (Hätte ich auch selbst sehen können :-)
Den ersten Seitenwechsel macht er, dann ist Schluß.
Vielleicht hast Du noch eine Idee.
Vielen Dank für deine Mühe.
Gruß, Mathias
Anzeige
Testdatei?
IngoG
Hallo Matthias,
ich habe das gefühl, dass ich die Stuktur Deiner Datei dann doch nicht wirklich verstanden habe...
Vielleicht stellst du einfach mal eine Testdatei ins netz und markierst die stellen, an denen ein Seitenwechsel stattfinden soll...
Gruß Ingo
AW: Testdatei?
Mathias
Hallo Ingo,
daran hatte ich auch schon gedacht.
Das geht aber nicht, da es sich um vertrauchliche Firmendaten handelt.
Gruß, Mathias
Anzeige
AW: Testdatei?
IngoG
Hallo Mathias,
es geht mir nicht um die Daten, sondern um die struktur...
ersetzte doch einfach Deine Daten durch dummywerte (nat. sinnvoll, also mit gruppenwechsel und numerisch Bzw alphanumerischen Daten)
es reichen ja 2-3 Seitenwechsel...
Gruß ingo
;

Forumthreads zu verwandten Themen

Anzeige
Anzeige
Entdecke relevante Threads

Schau dir verwandte Threads basierend auf dem aktuellen Thema an

Alle relevanten Threads mit Inhaltsvorschau entdecken
Anzeige
Anzeige

Infobox / Tutorial

Seitenumbruch nach bestimmten Kriterien in Excel


Schritt-für-Schritt-Anleitung

Um einen Seitenumbruch in Excel nach bestimmten Kriterien einzufügen, kannst du folgendes VBA-Makro verwenden. Es wird nach jeder Kundennummer in Spalte B einen Seitenwechsel einfügen.

  1. Öffne deine Excel-Datei und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub Seitenwechsel_bei_Gruppenwechsel()
        Dim Zelle As Range
        Dim zellealt As Object
        Dim ii%
    
        ' Alle bestehenden Seitenumbrüche löschen
        For ii = ThisWorkbook.ActiveSheet.HPageBreaks.Count To 1 Step -1
            ThisWorkbook.ActiveSheet.HPageBreaks(ii).Delete
        Next ii
    
        Set zellealt = ThisWorkbook.ActiveSheet.Range("B4")
    
        ' Durchlaufe die Zellen in Spalte B
        For Each Zelle In ActiveSheet.Range("B5:B" & ActiveSheet.Range("B65536").End(xlUp).Row)
            If Zelle <> zellealt And Zelle <> "" Then
                ThisWorkbook.ActiveSheet.HPageBreaks.Add Before:=Zelle
                Set zellealt = Zelle
            End If
        Next Zelle
    End Sub
  4. Schließe den VBA-Editor.

  5. Drücke ALT + F8, um das Makro auszuführen und wähle Seitenwechsel_bei_Gruppenwechsel.


Häufige Fehler und Lösungen

  • Excel Seitenumbruch funktioniert nicht: Stelle sicher, dass du das Makro korrekt ausgeführt hast. Überprüfe auch, ob in Spalte B tatsächlich Werte vorhanden sind.
  • Excel Seitenumbruch lässt sich nicht einfügen: Manchmal können bestehende Seitenumbrüche das Einfügen neuer Umbrüche verhindern. Lösche alle bestehenden Seitenumbrüche, bevor du das Makro ausführst.
  • Excel Seitenumbruch einfügen geht nicht: Überprüfe, ob die Zellen korrekt referenziert werden. Der Code sollte auf die korrekte Spalte (B) verweisen.

Alternative Methoden

Eine andere Möglichkeit, Seitenumbrüche in Excel manuell einzufügen, besteht darin, die Seitenlayout-Registerkarte zu verwenden:

  1. Wähle die Zeile aus, vor der du den Seitenumbruch einfügen möchtest.
  2. Gehe zu Seitenlayout.
  3. Klicke auf Umbrüche und wähle Seitenumbruch einfügen.

Dies ist eine einfache Methode, wenn du nur gelegentlich Seitenumbrüche benötigst.


Praktische Beispiele

Angenommen, du hast eine Liste mit Kundennummern in Spalte B und möchtest sicherstellen, dass jede Kundennummer auf einer neuen Seite beginnt. Mit dem oben genannten Makro kannst du dies erreichen. Wenn du das Makro ausführst, wird ein Seitenumbruch vor jeder neuen Kundennummer eingefügt.


Tipps für Profis

  • Excel Seitenumbruch einfügen Tastenkombination: Du kannst auch die Tastenkombination ALT + P gefolgt von B verwenden, um schnell in das Seitenlayout-Menü zu gelangen.
  • Seitenumbrüche Excel anpassen: Um die Position der Seitenumbrüche anzupassen, kannst du die manuelle Methode verwenden, um sie nach Bedarf zu verschieben.

FAQ: Häufige Fragen

1. Wie kann ich einen Seitenumbruch nach jeder Zeile einfügen?
Du kannst den bestehenden VBA-Code anpassen, um jede Zeile anstelle der Kundennummern zu berücksichtigen.

2. Gibt es eine Tastenkombination für den Seitenumbruch in Excel?
Ja, die Tastenkombination für einen Seitenwechsel ist ALT + P gefolgt von B und dann U.

3. Was kann ich tun, wenn der Seitenumbruch nicht funktioniert?
Stelle sicher, dass die Zielzellen nicht leer sind und dass du das richtige Makro ausgeführt hast. Überprüfe auch, ob es in der Datei bereits bestehende Seitenumbrüche gibt.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige