Office: (Office 365) VBA - Kopf- und Fußzeilen Anpassen mit Logos

Helfe beim Thema VBA - Kopf- und Fußzeilen Anpassen mit Logos in Microsoft Excel Hilfe um das Problem gemeinsam zu lösen; Hallo zusammen, ich bin auf der Suche nach einer Lösung mehrere Excel Dokumente (Viele Anhänge, die ich immer wieder anpassen muss, die aber nicht in... Dieses Thema im Forum "Microsoft Excel Hilfe" wurde erstellt von wowifeelgood, 23. November 2023.

  1. VBA - Kopf- und Fußzeilen Anpassen mit Logos


    Hallo zusammen,
    ich bin auf der Suche nach einer Lösung mehrere Excel Dokumente (Viele Anhänge, die ich immer wieder anpassen muss, die aber nicht in einer Datei gespeichert werden können/ Sollen) gleichzeitig anzupassen. Es sollen jeweils die Kopfzeilen und die Fußzeilen nach einem Schema angepasst werden:

    1. Kopfzeile oben links: Logo Nr. 1
    2. Kopfzeile Mitte: in dem Kopfzeilenfeld sind mehrere Zeilen geschrieben. Ich möchte nur in der Ersten Zeile einen Eintrag mit dem "Projektnamen" eintragen. In der Zweiten Zeile soll das stehen bleiben, was bisher dort steht (falls möglich) - nämlich die Art der Anlage
    3. Kopfzeile oben rechts: Logo Nr. 2
    4. Fußzeile unten links: Zwei Zeilen, Zeile 1: "FIRMA | Kzl, Kzl, Kzl", Zeile 2: "Stand:" und dahinter Das aktuelle Datum der neuen Bearbeitung
    5. Fußzeile Mitte: "Seite" und darunter die aktuelle Seite / Gesamt-Seitenzahl 6. Fußzeile rechts: Zeile 1: Dateiname, Zeile 2: "Druckdatum:" heutiges Datum

    Ich habe mir jetzt so beholfen, dass ich ein Makro im personal.xlsb angelegt habe, welches ich mit einem Symbol in der Symbolleiste aufrufen kann, sodass ich dadurch den workflow etwas vereinfache. Leider muss ich dazu immer noch jede Datei einmal öffnen, aber da habe ich noch keine alternative Lösungsidee.

    Nun ist aber mein Problem, dass es bei dem Code, den ich jetzt habe immer eine Fehlermeldung gibt beim Einlesen der Logos und ich verstehe nicht, warum...

    Folgenden Code habe ich, jedoch kommt hierbei immer eine Fehlermeldung entweder 1004 oder 384. Er hängt sich immer an dem "&G" auf.

    Code:
    Option Explicit
    
    Sub FormatHeadFoot()
        ' Dialog zum Auswählen von Logo Nr. 1
        Dim logo1Path As Variant
        logo1Path = Application.GetOpenFilename(FileFilter:="Bilder (*.gif; *.jpg; *.jpeg; *.bmp; *.png), *.gif; *.jpg; *.jpeg; *.bmp; *.png", Title:="Logo Nr. 1 auswählen")
        
        ' Abbrechen, wenn der Benutzer den Dialog abbricht
        If logo1Path = "False" Then
            Exit Sub
        End If
        
        ' Dialog für Projektnamen
        Dim projectName As String
        projectName = InputBox("Geben Sie den Projektnamen für die Kopfzeile Mitte ein:")
        
        ' Dialog zum Auswählen von Logo Nr. 2
        Dim logo2Path As Variant
        logo2Path = Application.GetOpenFilename(FileFilter:="Bilder (*.gif; *.jpg; *.jpeg; *.bmp; *.png), *.gif; *.jpg; *.jpeg; *.bmp; *.png", Title:="Logo Nr. 2 auswählen")
        
        ' Abbrechen, wenn der Benutzer den Dialog abbricht
        If logo2Path = "False" Then
            Exit Sub
        End If
        
        ' Kopfzeile und Fußzeile formatieren
        Dim ws As Worksheet
        For Each ws In ThisWorkbook.Sheets
            ' Alte Inhalte in den Kopf- und Fußzeilen entfernen
            With ws.PageSetup
                .LeftHeader = ""
                .CenterHeader = ""
                .RightHeader = ""
                .LeftFooter = ""
                .CenterFooter = ""
                .RightFooter = ""
            End With
    
            ' Kopfzeile
            With ws.PageSetup
                .LeftHeader = "&G" & logo1Path ' Logo Nr. 1
                .CenterHeader = projectName ' Projektnamen in der Mitte
                .RightHeader = "&G" & logo2Path ' Logo Nr. 2
            End With
    
            ' Fußzeile
            ws.PageSetup.LeftFooter = "FIRMA | Kzl, Kzl, Kzl" & vbCrLf & "Stand: " & Format(Now, "DD.MM.YYYY")
            ws.PageSetup.CenterFooter = "Seite &P von &N" ' &P ist die aktuelle Seite, &N ist die Gesamtanzahl der Seiten
            ws.PageSetup.RightFooter = ThisWorkbook.Name & vbCrLf & "Druckdatum: " & Format(Now, "DD.MM.YYYY")
        Next ws
    End Sub
    
    Hat jemand eine Idee, wie ich erstmal den Code zum laufen bekomme, oder alternativ eine Idee, wie ich das Problem anders angehen könnte?
     
    wowifeelgood, 23. November 2023
    #1
  2. d'r Bastler
    d'r Bastler Erfahrener User
    Moin,

    versuche mal ganz ohne Makro "&G" auch ohne Anführungszeichen in eine benutzerdefinierte Kopfzeile zu schreiben...
    In Deinem Code ist keine Variable solchen Namens definiert. Dann schreibe mal vor die Zeile mit dem ersten &G die Anweisung On error resume next und ich vermute stark, dass Du dann an &P oder &N hängenbleibst.

    Grüße
     
    d'r Bastler, 25. November 2023
    #2
Thema:

VBA - Kopf- und Fußzeilen Anpassen mit Logos

Die Seite wird geladen...
  1. VBA - Kopf- und Fußzeilen Anpassen mit Logos - Similar Threads - VBA Kopf Fußzeilen

  2. VBA - Ausblenden aller Tabellenblätter außer X

    in Microsoft Excel Hilfe
    VBA - Ausblenden aller Tabellenblätter außer X: Guten Morgen, ich bin ziemlicher VBA Neuling und habe aktuell Probleme mit einer Datei, die ich entwickelt habe. Zu der Datei: Es handelt sich um Daten, auf die lediglich ein bestimmter...
  3. Kamera in Excel einbinden und per vba Fotos erstellen

    in Microsoft Excel Hilfe
    Kamera in Excel einbinden und per vba Fotos erstellen: Kamera in Excel einbinden Hallo, ich suche einen Code für eine UserForm, mit der ich die integrierte Kamera des WinPC in der UserForm anzeigen lassen kann und davon ein Bild sichern kann.
  4. Liste aller Comboboxen im Sheet

    in Microsoft Excel Hilfe
    Liste aller Comboboxen im Sheet: Hallo allerseits, Ich möchte alle Comboboxen eines Worksheets mit VBA auslesen und finde nicht den Namen der Liste in den Sheet-Eigenschaften, in der die Comboboxen gespeichert sind. Wer weiß, wo...
  5. Pivot Tabelle: Quelle per VBA verändern

    in Microsoft Excel Hilfe
    Pivot Tabelle: Quelle per VBA verändern: Hi all, gibt es eine Möglichkeit, wie ich die Quelle einer Pivot Tabelle mit einem Klick aktualisieren kann? 1) Beispiel Quelle: [Datum_Dateiname.xlsx]Tabelle1!$A:$AA 2) Beispiel wie es je nach...
  6. Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche)

    in Microsoft Excel Hilfe
    Auswertung aus mehreren Registern erstellen (nur die Gelbmarkierten oder mit Datum von akt. Woche): Hallo zusammen, ich arbeite mit einer Excel-Arbeitsmappe, die mehrere Tabellenblätter enthält. Jedes Blatt dokumentiert bestimmte Vorgänge, und die Struktur der Daten ist in allen Blättern...
  7. VBA in einer Zeile zu lang

    in Microsoft Excel Hilfe
    VBA in einer Zeile zu lang: Moin, mein VBA Code ist für eine Zeile zu lang. Kann mir einer helfen wie ich den auf 2 Zeilen aufteilen Kann? arrSchuhDaten = Array(Range("A6"), Range("F6"), Range("J6"), Range("A7"),...
  8. KOpf- / und Fusszeile per VBA beschriften

    in Microsoft Excel Hilfe
    KOpf- / und Fusszeile per VBA beschriften: hallo, ich möchte in einer excel-arbeitsmappe sowohl kopf als auch fusszeile (primär die fusszeile) per vba mit inhalt füllen und zwar so, dass bevor gespeichert oder gedruckt wird meine werte...
  1. Diese Seite verwendet Cookies, um Inhalte zu personalisieren, diese deiner Erfahrung anzupassen und dich nach der Registrierung angemeldet zu halten.
    Auf dieser Website werden Cookies für die Zugriffsanalyse und Anzeigenmessung verwendet.
    Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies.
    Information ausblenden