Per VBA in die Kopfzeile der ersten Seite eine Grafik einfügen

Hallo liebe Leute,
ich möchte per VBA in die Kopfzeile der ersten Seite eine Grafik einfügen. Dazu habe ich u.g. Code geschrieben.

Problem:
An sich funktioniert der Code. Aber speichere ich die Datei als Vorlage und lade diese z.B. als AddInn sind die Grafiken nicht mehr zu sehen! Dabei kann werden Sie aber mit u.g. Prüfcode gezählt. Selbst wenn ich die Vorlage wieder als Word-Dokument speichere funktioniert der Code nicht mehr.
Was mache ich falsch?
Ich arbeite gerade mit Office 2010 es soll aber später auch unter Office2003 laufen

Code:

Sub TEst2()






Dim oShape As Shape, oRange As Range






Dim Pfad As String






Pfad = "D:\Temp\Hintergrund\_Farbig.png"






ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader






Set oRange = ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range






Set oShape = ActiveDocument.Shapes.AddPicture(FileName:=Pfad, \_






LinkToFile:=False, SaveWithDocument:=True, Anchor:=oRange)






With oShape






    .LockAspectRatio = msoTrue






    .Height = CentimetersToPoints(26.12)






End With






ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument






End Sub

Code Prüfung

Sub GrafikenZählen()






Dim h As HeaderFooter






Dim i As Integer, ret As Integer






Set h = ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage)






Debug.Print h.Shapes.Count






End Sub

Vielen herzlichen Dank für Eure Mühe.

Viele Grüße Markus

Alzheimer?
Moin,

bevor der Beitrag hier jede Woche kommt: vermutlich hat niemand Lust, Dein Konvolut rauf- und runterzublättern. Schreib’s kompakt, dann darfst Du auf Antwort hoffen.

Gruß Ralf

Hallo Ralf,

ich hatte versucht das Problem so exakt wie möglich zu beschreiben. Dennoch bin ich über Deinen Kommentar verwundert. Ich hatte in der Vergangeneheit viele Fragen beantwortet, jetzt hatte ich mal eine!

Gruß Markus

So habe die Lösung selbst gefunden. Für alle die es interessiert:

Sub GrafikEinfügen()

Dim oShape As Shape, oRange As Range
Dim Pfad As String
Pfad = „D:\Temp\Hintergrund_Farbig.png“

‚‘’ Lösung Anfang ‚‘’’
ActiveDocument.PageSetup.DifferentFirstPageHeaderFooter = True
‚‘’ Lösung Ende ‚‘’’

ActiveWindow.ActivePane.View.SeekView = wdSeekCurrentPageHeader
Set oRange = ActiveDocument.Sections(1).Headers(wdHeaderFooterFirstPage).Range

Set oShape = ActiveDocument.Shapes.AddPicture(FileName:=Pfad, _
LinkToFile:=False, SaveWithDocument:=True, Anchor:=oRange)

With oShape
    .LockAspectRatio = msoFalse
    .Height = CentimetersToPoints(29)
    .Width = CentimetersToPoints(3)
    .Left = CentimetersToPoints(13)
    .Top = CentimetersToPoints(0)
End With

With oShape.WrapFormat
        .Type = wdWrapSquare
        'Nur Umbruch links
        .Side = wdWrapLeft
        'Abstand links 1 cm, ansonsten 0 cm
        .DistanceLeft = CentimetersToPoints(1)
        .DistanceRight = CentimetersToPoints(0)
        .DistanceTop = CentimetersToPoints(0)
        .DistanceBottom = CentimetersToPoints(0)
        .AllowOverlap = False
End With

ActiveWindow.ActivePane.View.SeekView = wdSeekMainDocument

End Sub