Wie kann ich bei Excel in die Kopfzeile einen Wert aus einer Zelle schreiben? Hab es auch schon versucht, die Zelle mit einem Namen zu definieren, weiss nur nicht wie man sie in die Kopfzeile schreibt!
Private Sub Worksheet_Activate()
With ActiveSheet.PageSetup
.LeftHeader = Range("A1")
.CenterHeader = Range("B1")
.RightHeader = Range("C1")
End With
End Sub
Um einen Wert aus einer Zelle in die Kopfzeile deiner Excel-Tabelle zu übernehmen, folge diesen Schritten:
VBA-Editor öffnen: Drücke ALT + F11, um den Visual Basic for Applications (VBA) Editor zu öffnen.
Modul einfügen: Klicke auf Einfügen -> Modul, um ein neues Modul zu erstellen.
Code eingeben: Füge folgenden Code ein, um den Zelleninhalt in die Kopfzeile zu übernehmen:
Sub KopfzeileEinfügen()
Worksheets("Name der Tabelle mit der Kopfzeile").PageSetup.LeftHeader = Worksheets("Wo der Wert steht").Cells(1, 1).Value
End Sub
Anpassungen vornehmen: Ersetze "Name der Tabelle mit der Kopfzeile" und "Wo der Wert steht" durch die tatsächlichen Namen deiner Tabellen. Stelle sicher, dass die Zellenreferenz (1, 1) auf die gewünschte Zelle zeigt.
Makro ausführen: Schließe den VBA-Editor und führe das Makro aus, um den Wert in die Kopfzeile einzufügen.
Fehler: "Objekt nicht gefunden"
Fehler: Kopfzeile bleibt leer
Wenn du den Zelleninhalt in die Kopfzeile einfügen möchtest, ohne VBA zu verwenden, kannst du Folgendes tun:
Manuelles Einfügen:
Seitenlayout -> Kopf- und Fußzeile.Verknüpfung mit Zelle:
Beispiel 1: Wenn du den Wert aus Zelle A1 in die Kopfzeile übernehmen möchtest, lautet der VBA-Code:
Sub KopfzeileA1()
ActiveSheet.PageSetup.LeftHeader = Range("A1").Value
End Sub
Beispiel 2: Um den Inhalt aus Zelle B2 in die Kopfzeile zu übernehmen:
Sub KopfzeileB2()
ActiveSheet.PageSetup.CenterHeader = Range("B2").Value
End Sub
Zelleninhalt in Kopfzeile automatisch aktualisieren: Um die Kopfzeile automatisch bei Änderungen in der Zelle zu aktualisieren, nutze das Worksheet_Change-Ereignis im VBA-Editor.
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
ActiveSheet.PageSetup.LeftHeader = Range("A1").Value
End If
End Sub
Verwendung von Formeln: Du kannst auch Excel-Formeln in einer Zelle verwenden, um den Wert zu generieren, der dann in die Kopfzeile eingefügt wird.
1. Wie kann ich den Zelleninhalt in die Fußzeile übernehmen?
Du kannst den gleichen VBA-Code verwenden, indem du LeftFooter, CenterFooter oder RightFooter anstelle von LeftHeader verwendest.
2. Funktioniert das auch in älteren Excel-Versionen? Ja, die beschriebenen Methoden funktionieren in den meisten Excel-Versionen, die VBA unterstützen, wie Excel 2010 und neuer.