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 hat Ahnung
    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 Laufzeitfehler 9

    in Microsoft Excel Hilfe
    VBA Laufzeitfehler 9: Guten Abende an alle VBA Profi, Ich lerne gerade Programmierung mit VBA und habe fast null Ahnung von Fehlern ich habe folgenden Probleme. ich einen xlsm Datei versuche eine Tabelle mit codename...
  3. Werte per VBA automatisch übertragen und fortlaufend speichern

    in Microsoft Excel Hilfe
    Werte per VBA automatisch übertragen und fortlaufend speichern: Moin, ich habe da mal eine bitte: wie kann ich diesen Code dazu bringen von einer bestimmten Datei automatische Werte in eine andere Datei kopiert? Ich kann zwar die Werte in derselben Tabelle...
  4. Array aus Excel Tabelle einlesen Word VBA

    in Microsoft Excel Hilfe
    Array aus Excel Tabelle einlesen Word VBA: Hallo, ich benötige in einer Word Datei die Werte einer Excel Datei. Ich würde gerne eine Spalte als Array einlesen. Wie das Array ein lesen in Excel geht weiß ich, aber wie schaffe ich den...
  5. Textmarken und Querverweis in Dokument einfügen VBA

    in Microsoft Word Hilfe
    Textmarken und Querverweis in Dokument einfügen VBA: Hallo, ich habe per Seriendruck ein Word Dokument erstellt. Es ist kein Klassischer Serienbrief sondern eine Auswertung über mehreren Seiten, es können durchaus mehrere hundert Seiten werden. Ich...
  6. Dynamische Tabellen mit automatischer Aktualisierung

    in Microsoft Excel Hilfe
    Dynamische Tabellen mit automatischer Aktualisierung: Hallo in die Runde! Vorab schon mal vielen Dank für alle Mühen und die Hilfe! Ich habe folgendes Anliegen: Ich habe eine Geräteliste als Excel Datei mit einigen verschiedenen Tabellenblättern...
  7. (Excel) Dynamische Tabelle, VBA, fehlende Formatierung?

    in Microsoft Excel Hilfe
    (Excel) Dynamische Tabelle, VBA, fehlende Formatierung?: Liebe Experten, Gefilterte Daten sollen in ein Listobject übertragen werden. Für das Listobject habe ich ein Template angelegt, dass alle Formatierungen (u.a. bedingte Formatierung etc.) enthält....
  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