Makro VBA Kopfzeilen auf allen Tabellenblättern gleich anpas
09.01.2025 16:01:57
LJK
ich möchte die Kopfzeilen aller Tabellenblätter nach einem Deckblatt anpassen. Ich habe mir dazu ein Makro geschrieben und direkt im Basiscode des Tabellenblatts (Deckblatt) abgelegt. Wenn ich das Makro mit einer Tastenkombination aktiviere läuft es auch über alle Tabellenblätter durch und passt alle Kopfzeilen an.
Wenn ich jetzt jedoch dasselbe Makro einem Button zuweisen möchte und den Quelltext in ein eigenes Modul kopiere und dann den Button drücke läuft es leider nicht mehr über alle Tabellenblätter durch und ändert nur noch die Kopfzeile des Deckblattes. Könnt ihr mir bitte weiterhelfen. Ich finde gerade meinen Denkfehler nicht.
Makro:
Sub SeitenLayout()
Dim Tabelle As Worksheet 'Variable für die Schleife über alle Tabellen
Dim AktTabelle As String 'Tabelle in der das Makro angestoßen wird
Dim zFaktor As Integer 'Zoomfaktor der Seite
Dim sFaktor As Double 'Faktor für die Schriftgrößen
Dim s12, s06 As Double 'angepasste Schriftgrößen
Application.ScreenUpdating = False
'Aktives Tabellenblatt für den Rücksprung speichern
AktTabelle = ActiveSheet.Name
'Schleife über alle Tabellenblätter
For Each Tabelle In ActiveWorkbook.Worksheets
Tabelle.Activate
'Kopf- und Fusszeile einstellen
With ActiveSheet.PageSetup
.LeftHeader = Range("L4")
.CenterHeader = ""
.LeftFooter = "&06" & "&F" & " | " & "&D" & " | " & "&T"
.RightFooter = "Seite &P von &N"
.ScaleWithDocHeaderFooter = False
.AlignMarginsHeaderFooter = True
End With
Next Tabelle
'Rücksprung zum aktuellen Tabellenblatt
Sheets(AktTabelle).Activate
Application.ScreenUpdating = True
End Sub
Vielen Dank im Voraus.
Grüße
LJK
Anzeige