Hallo und ein gesundes neues Jahr @all,
ich stehe auf dem Schlauch und brauche Hilfe. Mein VBA-Code soll folgendes tun, um einen Abschnittswechsel löschen zu können:
1. Kopf- und Fußzeilen aus dem 1. Abschnitt in den 2. Abschnitt übertragen (klappt)
2. Da im 1. Abschnitt die erste Seite anders ist, soll das auch auf den 2. Abschnitt übertragen werden (klappt)
3. Danach wird der 2. Abschnitt gelöscht und alle Kopf-/Fußzeilen sollen wie bisher im 1. Abschnitt sein (klappt fast)
Mein Problem mit der Fußzeile:
- im 1. Abschnitt hat die Fußzeile keine Zeilenumbrüche, weder auf der 1. noch auf der 2. Seite.
- Die 2 leeren Seiten im 2. Abschnitt haben auch jeweils nur 1 leere Fußzeile, bevor ich die Daten übertrage.
- Nach dem Übertragen der Fußzeile ist aber im 2. Abschnitt auf der 2. Seite ein Zeilenumbruch am Ende drin.
- Bei den unterschiedlichen Kopfzeilen habe ich das Problem nicht. Da stimmt alles.
Hier ist mein Code:
'Kopf- und Fußzeilen kopieren
Dim Dokument As Object
Dim Kopfzeile1_alt As Word.Range
Dim Kopfzeile2_alt As Word.Range
Dim Fusszeile1_alt As Word.Range
Dim Fusszeile2_alt As Word.Range
Dim Kopfzeile1_neu As Word.Range
Dim Kopfzeile2_neu As Word.Range
Dim Fusszeile1_neu As Word.Range
Set Dokument = CreateObject("Word.Application")
Set Dokument = ActiveDocument
Dokument.Sections(2).PageSetup.DifferentFirstPageHeaderFooter = True
Set Kopfzeile1_alt = Dokument.Sections(1).Headers(wdHeaderFooterFirstPage).Range.FormattedText
Set Kopfzeile1_neu = Dokument.Sections(2).Headers(wdHeaderFooterPrimary).Range.FormattedText
Kopfzeile1_neu = vbNullString
Kopfzeile1_neu.Collapse wdCollapseStart
Kopfzeile1_neu.FormattedText = Kopfzeile1_alt.FormattedText
Set Kopfzeile2_alt = Dokument.Sections(1).Headers(wdHeaderFooterPrimary).Range.FormattedText
Set Kopfzeile2_neu = Dokument.Sections(2).Headers(wdHeaderFooterPrimary).Range.FormattedText
Kopfzeile2_neu = vbNullString
Kopfzeile2_neu.Collapse wdCollapseStart
Kopfzeile2_neu.FormattedText = Kopfzeile2_alt.FormattedText
Set Fusszeile1_alt = Dokument.Sections(1).Footers(wdHeaderFooterPrimary).Range.FormattedText
Set Fusszeile1_neu = Dokument.Sections(2).Footers(wdHeaderFooterPrimary).Range.FormattedText
Fusszeile1_neu = vbNullString
Fusszeile1_neu.Collapse wdCollapseStart
Fusszeile1_neu.FormattedText = Fusszeile1_alt.FormattedText
With Dokument.Sections(2)
.Headers(wdHeaderFooterFirstPage).LinkToPrevious = False
End With
With Dokument.Sections(2)
.Footers(wdHeaderFooterFirstPage).LinkToPrevious = False
End With
Hat jemand eine Idee?
Danke euch für eure Hilfe.
Viele Grüße
Jens
|