„Überschrift 4“ muss mit der nächsten Überschrift übereinstimmen, wenn die nächste Überschrift „Überschrift 5“ ist, in anderen Fällen jedoch nicht.

„Überschrift 4“ muss mit der nächsten Überschrift übereinstimmen, wenn die nächste Überschrift „Überschrift 5“ ist, in anderen Fällen jedoch nicht.

Ich habe ein Word-Dokument, das ein Regelbuch ist. Um die Aufzählung zu erledigen, werden für verschiedene Ebenen in den Regeln (Regel 1, Abschnitt 3, Artikel 4, Unterartikel b, Unterunterartikel 1 usw.) unterschiedliche Überschriften verwendet. Das funktioniert hervorragend.

Manchmal leitet Unterartikel c eine Liste mit mehreren Unterunterartikeln ein. So weit, so gut.

Aber manchmal ist der Unterartikel c die letzte Zeile auf der Seite, was bedeutet, dass die Liste der Unterunterartikel in der ersten Zeile der nächsten Seite beginnt. Das ist nicht gut.

Ich kann auch die Überschriften 4, 5 und 6 nicht so gestalten,stets Weiter mit dem nächsten, denn dann würde auch Rubrik 5weitermachen mit dem nächstenWenn der nächste Absatz keine Liste ist, wird zu viel Text auf die nächste Seite verschoben und Platz verschwendet.

Meine bisherige Problemumgehung bestand darin, mir alle Unterseiten aller Seiten anzusehen und den „Absatz“-Einstellungen (auf Niederländisch „Alinea“) manuell „mit nächstem zusammenhalten“ hinzuzufügen, wenn ich sie finde. Da das Dokument jedoch über 400 Seiten umfasst, ist dies nicht nachhaltig.

Ich habe irgendwo ein Makro gefunden (danke und Lob!), das mir ein wenig hilft:

Sub ColonParaEnd_SetKeepWithNext()

    '=========================
    'Macro created 2010 by Lene Fredborg, DocTools - www.thedoctools.com
    'THIS MACRO IS COPYRIGHT. YOU ARE WELCOME TO USE THE MACRO BUT YOU MUST KEEP THE LINE ABOVE.
    'YOU ARE NOT ALLOWED TO PUBLISH THE MACRO AS YOUR OWN, IN WHOLE OR IN PART.
    '=========================
    'The macro iterates through all paragraphs in the active document
    'If a paragraph ends with a colon, Keep with next is applied
    '=========================

    Dim oPara As Paragraph
    Dim n As Long 'used as counter
    
    n = 0
    
    'Iterate though all paragraphs
    For Each oPara In ActiveDocument.Paragraphs
        With oPara
            'If a colon is found immediately before the paragraph mark, Chr(13), apply Keep with next
            'In case of end of a table cell, the end of cell marker is Chr(13) & Chr(7) - alså handle this
            If Right(.Range.Text, 2) = ":" & Chr(13) Or Right(.Range.Text, 3) = ":" & Chr(13) & Chr(7) Then
                .Range.ParagraphFormat.KeepWithNext = True
                n = n + 1
            End If
        End With
    Next oPara
    
    MsgBox "Finished." & vbCr & "Keep with next applied to " & n & " paragraph(s).", vbOKOnly, "Apply Keep With next"
End Sub

Ich habe mich daher gefragt, ob mir kluge Leute nicht mit einem cleveren Makro (möglicherweise aufbauend auf dem von mir zitierten) helfen könnten. Was ich suche:

  1. Wenn auf Überschrift 4 Überschrift 5 folgt, machen Sie diese Instanz von Überschrift 4 zum „Beibehalten mit der nächsten“.
  2. Wenn auf Überschrift 5 Überschrift 6 folgt, machen Sie diese Instanz von Überschrift 5 zum „Beibehalten mit der nächsten“.
  3. Wenn auf Überschrift 6 Überschrift 7 folgt, machen Sie diese Instanz von Überschrift 6 zum „Beibehalten mit der nächsten“.

Vielen Dank im Voraus für Ihre Einsicht!

verwandte Informationen