Jeder Google-Treffer zum Anwenden derselben Kopfzeile besagt, dass alle Blätter markiert und eine Kopfzeile festgelegt werden soll. Wie kann ich sicherstellen, dass neue Blätter, die ich hinzufüge, auch dieselbe Kopfzeile erhalten, ohne immer
Antwort1
Als ersten Versuch würde ich dieses Ereignis verwenden:
Private Sub Workbook_NewSheet(ByVal Sh As Object)
sh.range("A1").value = "xxx"
End Sub
Sie müssten dieses Makro zu Ihrer Arbeitsmappe hinzufügen, nicht zu einem Arbeitsblatt und nicht als Modul oder Klasse.
Eine andere Möglichkeit wäre die Verwendung eines dafür vorgesehenen Add-Ins. Damit soll dieses Verhalten in jeder Arbeitsmappe sichergestellt werden.
Antwort2
Hier ist VBA-Code zum Kopieren der Kopf- und Fußzeile vom ersten Blatt auf ein neues Blatt. Fügen Sie diesen in ThisWorkbook
den VBA-Explorer ( Alt+ F11) ein und speichern Sie ihn. Er wird ausgeführt, wenn Sie ein neues Blatt hinzufügen.
Passen Sie die vierte Zeile, in der „ steht,“ Sheet1
so an, dass dies der Name Ihres ersten Blattes ist.
Private Sub Workbook_NewSheet(ByVal Sh As Object)
Dim Ws As Worksheet
'Change "Sheet1" below to the name of sheet being copied
Set Setup = Worksheets("Sheet1").PageSetup
With ActiveSheet.PageSetup
.LeftHeader = Setup.LeftHeader
.CenterHeader = Setup.CenterHeader
.RightHeader = Setup.RightHeader
.LeftFooter = Setup.LeftFooter
.CenterFooter = Setup.CenterFooter
.RightFooter = Setup.RightFooter
End With
End Sub
Wenn Sie es manuell ausführen möchten, ändern Sie die erste Zeile in
Sub CopyHeaderFooter()
AltEs wird dann als ausführbares Makro ( + F8) mit dem Namen angezeigt , das CopyHeaderFooter
Sie bei Bedarf ausführen können.