Kopf- und Fußzeile gestalten mit VBA

Die Kopf- und Fußzeile einer Excel-Tabelle lässt sich über VBAMakros genauso flexibel und einfach gesalten, wie in Excel selbst.

Anforderungen

  • Ansprechen aller Header- und Footer-Bereiche
  • Flexible Benennung

Code

Option Explicit

Dim strUnternehmen As String
Dim strGroup As String



Sub KopfFuß()                               ' Fügt Kopf- und Fußzeile in jedes Tabellenblatt ein

strUnternehmen = "Mein Unternehmen"
strGroup = "Group"

Dim isht As Worksheet

For Each isht In ThisWorkbook.Sheets
    Call KopfFußzeile_alle_Tabellen(isht, strUnternehmen, strGroup)
Next

End Sub



Private Sub KopfFußzeile_alle_Tabellen(sht As Worksheet, strUnternehmen As String, strGroup As String)           ' KopfFußzeilendefinition
   With sht.PageSetup
        .LeftHeader = "Bearbeiter: " & strVerant_Personal
        .CenterHeader = "Lagertabelle für " & strUnternehmen
        .RightHeader = Date
        .LeftFooter = ""
        .CenterFooter = "© by " & strGroup
        .RightFooter = "Seite &P von &N"
    End With
    
End Sub

Der Code ist in drei Blöcke aufgeteilt.
Im ersten Bereich werden zwei Variablen für die weitere Verwendung in diesem Modul definiert.
Im zweiten Bereich werden den Varialben Werte zugewiesen

  • strUnternehmen = „Mein Unternehmen“
  • strGroup = „Group“

und es wird festgelegt, dass für die gesamte Arbeitsmappe die gleiche Kopz- und Fußzeile zu verwenden ist.

Dim isht As Worksheet

For Each isht In ThisWorkbook.Sheets
    Call KopfFußzeile_alle_Tabellen(isht, strUnternehmen, strGroup)
Next

Im dritten Zeil sind die eigentlichen Einstellungen für Kopf- und Fußbereich zu finden. In Englisch wird der Kopf- und Fußbereich mit Header und Footer bezeichnet.

Private Sub KopfFußzeile_alle_Tabellen(sht As Worksheet, strUnternehmen As String, strGroup As String)           ' KopfFußzeilendefinition
   With sht.PageSetup
        .LeftHeader = "Bearbeiter: " & strVerant_Personal
        .CenterHeader = "Lagertabelle für " & strUnternehmen
        .RightHeader = Date
        .LeftFooter = ""
        .CenterFooter = "© by " & strGroup
        .RightFooter = "Seite &P von &N"
    End With
    
End Sub

Zu beachten ist, dass das Makro KopfFußzeile_alle_Tabellen zusammen mit dem Makro KopfFuß aufgerufen wird (Beachte Call-Befehlt).

Besonderheit

Im dritten Bereich ist eine Variable zu finden, die in diesem Modul nicht definiert wurde. Sie lautet strVerant_Personal. Die Variable wird aus einem anderen Makro geholt, damit in diesem Beispiel im Headerbereich die Personalnummer hinter dem Text Bearbeiter eingefügt wird, z.B. Beareiter: 1234

Bestseller Nr. 1

(**) Produktpreise und -verfügbarkeit sind zum angegebenen Datum / Uhrzeit korrekt und können sich ändern. Alle Preis- und Verfügbarkeitsinformationen auf https://www.amazon.de/ zum Zeitpunkt des Kaufs gelten für den Kauf dieses Produkts.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.