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