Fu▀zeile abhΣngig von der Seitenanzahl gestalten

Sie m÷chten mit Word 97 eine Dokumentenvorlage erstellen. Dabei soll die Fu▀zeile leer bleiben, wenn nur eine Seite beschriftet ist. LΣngere Texte sollen in der Fu▀zeile der ersten Seite die Seitenzahl ╗2½, auf der zweiten Seite die ╗3½ und so weiter drucken.

Mit ein wenig Unterstⁿtzung durch VBA (Visual Basic for Applications) k÷nnen Sie Ihre Anforderung umsetzen.
Entwerfen Sie zuerst die Dokumentenvorlage und fⁿgen Sie dabei eine Fu▀zeile mit Seitennummer ein. Die Nummerierung Ihres Dokuments soll mit ╗2½ beginnen, da Sie ein Deckblatt verwenden. Rufen Sie dazu den Befehl ╗Einfⁿgen | Seitenzahlen½ auf und klicken Sie auf die SchaltflΣche ╗Format½. Schreiben Sie ╗2½ in das Feld ╗Beginnen mit½ und bestΣtigen Sie diese Angabe mit ╗OK½. ! Achtung: Verlassen Sie den Dialog ╗Seitenzahlen½ mit der SchaltflΣche ╗Schlie▀en½. Wenn Sie auf die SchaltflΣche ╗OK½ klicken, ⁿberschreibt Word Ihre zuvor gestaltete Fu▀zeile.
Als nΣchstes mⁿssen Sie dafⁿr sorgen, dass die Fu▀zeile bei einseitigen Dokumenten unterdrⁿckt wird. Dies bewerkstelligen Sie mit der VBA-Prozedur ╗changeFooters()½. ╓ffnen Sie den Visual-Basic-Editor mit dem Menⁿbefehl ╗Extras | Makro | Visual Basic-Editor½. Markieren Sie unter ╗Projekt½ Ihr aktuelles Dokument und rufen Sie den Menⁿbefehl ╗Einfⁿgen | Modul½ auf. ErgΣnzen Sie den abgedruckten VBA-Code. Sie finden den VBA-Code auch auf unserer Heft-CD CHIP-Code FUSSZEIL.

Public Sub changeFooters()

On Error Resume Next

Dim iSeiten As Integer

iSeiten = ActiveDocument.ComputeStatistics(Statistic:=wdStatisticPages, IncludeFootnotesAndEndnotes:=True)
If iSeiten = 1 Then
  ActiveDocument.Sections(1).Footers(wdHeaderFooter  Primary).Range.Font.Hidden = True
Else
  ActiveDocument.Sections(1).Footers(wdHeaderFooter  Primary).Range.Font.Hidden = False
End If

End Sub


Mit dem Befehl ╗ComputeStatistics½ wird zuerst die aktuelle Seitenzahl ermittelt. AbhΣngig von der Anzahl der Seiten setzt sie anschlie▀end die Eigenschaft ╗Hidden½ Ihrer Fu▀zeile auf ╗True½ oder ╗False½. Auf diese Weise verbirgt Word die Fu▀zeile bei einseitigen Dokumenten.
Um das Makro zu automatisieren, fⁿgen Sie in der Standard-Symbolleiste die Prozedur ╗changeFooters()½ als eigenes Symbol hinzu.
Dazu klicken Sie mit der rechten Maustaste auf die Symbolleiste und rufen den Kontextbefehl ╗Anpassen½ auf. Wechseln Sie auf das Register ╗Befehle½ und markieren Sie in der Liste ╗Kategorien½ den Eintrag ╗Makros½. Dann ziehen Sie den Eintrag ╗TemplateProject.Modul1.changeFooters½ aus der Liste ╗Befehle½ via Drag & Drop in die Symbolleiste ╗Standard½.
Um die Eigenschaften des neuen Symbols zu Σndern, klicken Sie es mit der rechten Maustaste an. Im folgenden Kontextmenⁿ k÷nnen Sie mit dem Befehl ╗SchaltflΣchensymbol Σndern½ ein Bild fⁿr Ihr neues Symbol festlegen. Klicken Sie auf ╗Standard½, um die Einstellungen zu speichern. Zuletzt schlie▀en Sie den Dialog ╗Anpassen½.
www.chip.de/forum/office97