Live-Forum - Die aktuellen Beiträge
Anzeige
Anzeige
HERBERS
Excel-Forum (Archiv)
20+ Jahre Excel-Kompetenz: Von Anwendern, für Anwender

Forumthread: Kopfzeile per VBA auslesen

Kopfzeile per VBA auslesen
28.04.2007 21:07:04
Chris
Hallo,
ich benötige mal wieder eure Hilfe. Ist es möglich, per VBA die Kopf und Fußzeile von Excel auszulesen? Und wenn, wie Funktioniert das?
Vielen Dank für Eure Hilfe.
Gruß Chris

Anzeige

3
Beiträge zum Forumthread
Beiträge zu diesem Forumthread

Betreff
Datum
Anwender
Anzeige
AW: Kopfzeile per VBA auslesen
28.04.2007 21:14:26
Josef
Hallo Chris,
Sub Header_And_Footer()
Dim strHeader As String, strFooter As String

With ActiveSheet.PageSetup
    
    strHeader = .LeftHeader
    strHeader = strHeader & vbTab & .CenterHeader
    strHeader = strHeader & vbTab & .RightHeader
    
    strFooter = .LeftFooter
    strFooter = strFooter & vbTab & .CenterFooter
    strFooter = strFooter & vbTab & .RightFooter
    
End With

MsgBox "Kopfzeile: " & strHeader & vbLf & vbLf & _
    "Fusszeile: " & strFooter
End Sub

Gruß Sepp

Anzeige
AW: Kopfzeile per VBA auslesen
28.04.2007 21:15:00
Kurt

Sub kfz()
With ActiveSheet.PageSetup
MsgBox .LeftHeader
MsgBox .CenterHeader
MsgBox .RightHeader
MsgBox .LeftFooter
MsgBox .CenterFooter
MsgBox .RightFooter
End With
End Sub


mfg Kurt

Vielen, Vielen Dank
28.04.2007 21:21:31
Chris
Danke für Eure Hilfe. Genau das hatte ich gesucht. Jetzt habe ich endlich noch was bis morgen früh zu tun.
Gruß Chris
Anzeige
;
Anzeige
Anzeige

Infobox / Tutorial

Kopfzeile und Fußzeile per VBA auslesen


Schritt-für-Schritt-Anleitung

Um die Kopfzeile und Fußzeile in Excel per VBA auszulesen, kannst du folgende Schritte befolgen:

  1. Öffne Excel und drücke ALT + F11, um den VBA-Editor zu öffnen.

  2. Klicke auf Einfügen und wähle Modul, um ein neues Modul zu erstellen.

  3. Füge den folgenden Code in das Modul ein:

    Sub Header_And_Footer()
       Dim strHeader As String, strFooter As String
    
       With ActiveSheet.PageSetup
           strHeader = .LeftHeader & vbTab & .CenterHeader & vbTab & .RightHeader
           strFooter = .LeftFooter & vbTab & .CenterFooter & vbTab & .RightFooter
       End With
    
       MsgBox "Kopfzeile:  " & strHeader & vbLf & vbLf & _
              "Fusszeile:  " & strFooter
    End Sub
  4. Schließe den VBA-Editor und kehre zu Excel zurück.

  5. Drücke ALT + F8, wähle das Makro Header_And_Footer aus und klicke auf Ausführen.

Jetzt solltest du eine Meldung sehen, die die Inhalte der Kopfzeile und Fußzeile anzeigt.


Häufige Fehler und Lösungen

  • Fehler: "Variable nicht definiert"

    • Stelle sicher, dass du alle Variablen korrekt deklariert hast. Im Beispiel wurde strHeader und strFooter als String deklariert.
  • Fehler: "Objekt erforderlich"

    • Dieser Fehler tritt auf, wenn du versuchst, auf ein Sheet zuzugreifen, das nicht aktiv ist. Vergewissere dich, dass das richtige Sheet ausgewählt ist.

Alternative Methoden

Eine weitere Möglichkeit, die Kopf- und Fußzeilen auszulesen, ist die Verwendung eines einfacheren Codes:

Sub kfz()
    With ActiveSheet.PageSetup
        MsgBox .LeftHeader
        MsgBox .CenterHeader
        MsgBox .RightHeader
        MsgBox .LeftFooter
        MsgBox .CenterFooter
        MsgBox .RightFooter
    End With
End Sub

Dieser Code zeigt jede Kopf- und Fußzeile in separaten Meldungsfenstern an.


Praktische Beispiele

Angenommen, du möchtest die Kopfzeile für eine Rechnung formatieren. Du könntest den folgenden VBA-Code nutzen, um die Kopfzeile automatisch zu setzen und anschließend auszulesen:

Sub SetAndReadHeader()
    With ActiveSheet.PageSetup
        .LeftHeader = "Rechnung"
        .CenterHeader = "Firma XYZ"
        .RightHeader = "Datum: " & Format(Date, "dd.mm.yyyy")
    End With

    Call Header_And_Footer
End Sub

Dieser Code setzt die Kopfzeile und ruft dann die vorherige Funktion auf, um sie auszulesen.


Tipps für Profis

  • Fehlerbehandlung einfügen: Um sicherzustellen, dass dein Code robust ist, füge Fehlerbehandlungsroutinen hinzu, z.B. On Error Resume Next.

  • Energie sparen: Verwende Application.ScreenUpdating = False, bevor du umfangreiche Änderungen vornimmst, um die Geschwindigkeit zu erhöhen.

  • Benutzerdefinierte Kopfzeilen: Experimentiere mit verschiedenen Formaten und Inhalten in den Kopfzeilen, wie z.B. Bildern oder speziellen Schriftarten.


FAQ: Häufige Fragen

1. Kann ich die Kopfzeile auf mehreren Sheets gleichzeitig ändern? Ja, du kannst eine Schleife verwenden, um durch alle Sheets zu iterieren und die Kopfzeile für jedes Sheet zu setzen.

2. Welche Excel-Versionen unterstützen VBA? VBA wird in Excel 2007 und späteren Versionen unterstützt. Stelle sicher, dass du eine unterstützte Version verwendest.

Beliebteste Forumthreads (12 Monate)

Anzeige
Anzeige
Entdecke mehr
Finde genau, was du suchst

Die erweiterte Suchfunktion hilft dir, gezielt die besten Antworten zu finden

Suche nach den besten Antworten
Unsere beliebtesten Threads

Entdecke unsere meistgeklickten Beiträge in der Google Suche

Top 100 Threads jetzt ansehen
Anzeige