|
Hallo Carsten,
ich hab mir das mal angesehen. Die einzige Idee die ich dazu habe wäre, dass man über eine Words-Schleife die Abschnittswechsel identifizieren, ausschneiden und an anderer Stelle nach vollen 10 Seiten wieder einfügen könnte. Das Problem, was ich leider nicht gelöst bekomme ist: Es gibt vier Abschnittswechsel (Nächste Seite, Fortlaufend, Gerade Seite, ungerade Seite). Leider kann VBA diese nicht voneinander und auch nicht von einem normalen Seitenumbruch unterscheiden. In allen Fällen wird das Ascii-Zeichen 12 zurückgegeben. Somit ist es schwierig den richtigen Abschnitt zu finden
Welchen Abschnittswechsel verwendest du? Wenn ich dich richtig verstehe willst du die bestehenden Abschnittswechsel beibehalten, aber auf jede 10te Seite verschieben?
Edit: Ich spiele grade mit der Sections-Auflistung rum. Damit scheinen zumindest normale Seitenumbrüche ignoriert zu werden. Die Schleife
For Each sec In ActiveDocument.Sections
sec.Range.Select
Next sec
markiert dir schonmal bei manuellem Durchlauf (mit F8) jeden einzelnen Abschnitt. Damit lässt sich was anfangen. Wenn man es schlau anstellt, könnte man hier das letzte Zeichen (also den eigentlichen Wechsel) cutten und zu Beginn einer 10. Seite einfügen.
Teste mal diesen Code. Vergiss aber nicht vorher zu speichern, damit du dir nichts zerschießt.
Sub Abschnitte_verschieben()
On Error GoTo Fehler
Dim sec As Section, r As Range, p As Long, test As Boolean
For s = 1 To ActiveDocument.Sections.Count
Set sec = ActiveDocument.Sections(s)
Set r = ActiveDocument.Range
r.SetRange sec.Range.End - 1, sec.Range.End
r.Select
r.Cut
p = p + 10
ActiveWindow.ActivePane.Pages(p).Rectangles(1).Range.Paste
Next s
Fehler:
End Sub
Gruß Mr. K.
|