dievonnebenan
Goto Top

Dynamisches Bild in die Fusszeile einfügen

Ich suche eine Möglichkeit in Excel 2002/2003 ein Bild in die Fusszeile einzufügen. Die normale Funktion von Excel nützt mir leider nicht viel, da das Bild hierbei in die Excel-Datei eingebettet wird. Ich möchte aber erreichen, dass das Bild nachgeladen wird und somit durch ersetzen der Bild-Datei bequem austauschbar wird.

Ziel des Ganzen soll sein, dass eine in Excel generierte Rechnung gedruckt wird, deren Umfang zwischen einer und drei Seiten variiert. Daher kann ich das Bild nicht einfach in die Tabelle einbetten, sonst würden ja immer 3 Seiten gedruckt.

Besteht die Möglichkeit, das Bild z.B. per VB zu laden? Kann man dabei angeben, dass das Bild immer im selben Ordner wie die Excel-Datei (oder einem Unterordner) liegt, ohne selbst komplette Pfadangaben verwenden zu müssen?

MfG Chris

Content-Key: 106658

Url: https://administrator.de/contentid/106658

Printed on: April 19, 2024 at 20:04 o'clock

Member: dievonnebenan
dievonnebenan Feb 14, 2009 at 17:00:36 (UTC)
Goto Top
Nochmal zurück zu diesem Problem.

Es würde ja schon reichen, wenn einfach bei jedem Start der Excel-Datei die Grafik footer.png in die Fusszeile geladen werden würde face-smile

Vielleicht hat ja doch einer von euch eine Idee? *gg*

MfG Chris
Member: dievonnebenan
dievonnebenan Feb 26, 2009 at 11:54:59 (UTC)
Goto Top
hi leute,

habe von anderer stelle antwort auf diese frage erhalten. da dieses problem schon mehrfach in anderen foren unbeantwortet blieb, möchte ich hier zumindest eine lösung anbieten face-smile

folgendermassen kommt man zum ergebnis:
  • in excel ALT + F11 drücken, um in den Visual Basic Editor zu gelangen
  • links oben im "projekt explorer" unter der betreffenden Arbeitsmappe mit rechter Maustaste auf "Module" klicken, dort "einfügen" / "modul" auswählen
  • im rechten bereich öffnet sich dadurch die "Codeansicht" des neuen Moduls, in die man folgenden Code kopiert:
Sub fusszeile_einfuegen()
    ActiveSheet.PageSetup.LeftFooterPicture.Filename = _
        ThisWorkbook.Path & "\footer.png"  
    ActiveSheet.PageSetup.PrintArea = ""  
    With ActiveSheet.PageSetup
        .LeftFooter = "&G"  
    End With
End Sub
  • der code fügt im linken teil der fusszeile das bild footer.png ein, welches im gleichen verzeichnis wie die excel-datei selbst liegen muss
  • danach gehts zurück in den "projekt explorer"
  • linksklick auf "microsoft excel objekte", dann doppelklick auf "diese arbeitsmappe"
  • dadurch öffnet sich die "codeansicht" für dieses objekt, in die man folgenden code kopiert:
Private Sub Workbook_Open()
    Call fusszeile_einfuegen
End Sub
  • der code sorgt dafür, dass das script "fusszeile_einfuegen" bei jedem öffnen der excel-datei ausgeführt wird

sooo... das wars dann auch schon

MfG Chris