Guten Tag zusammen
Die Situation: Ich bearbeite von einem Excel-Dokument aus ein Word-Dokument. Das ausfüllen des Words ist soweit kein Problem. Nun gibt es eine Kopfzeile in jedem auszufüllenden Dokument, in diese werden immer exakt die gleichen Werte eingefügt..
Deswegen habe ich gedacht, es wäre praktisch darauf eine Funktion zu machen. Bis jetzt scheitere ich aber daran, den Dokument-Verweis als Referenz an die Funktion zu übergeben. Bekomme in den Fehler: Compile Error: ByRef argument type mismatch.
Nun mal mein Code:
Public Function Kopfzeile(ByRef Doc As Object, AenderungsID As String, Betrieb As String, BauE As String) As Object
'On Error GoTo ErrHandling
Dim bmrange As Range
Set bmrange = Doc.Sections(1).Headers(wdHeaderFooterPrimary).Range.Bookmarks("Aenderung").Range
bmrange = AenderungsID
ActiveDocument.Bookmarks.Add Name:="Aenderung", Range:=bmrange
Dim BetriebRa As Range
Set BetriebRa = ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Bookmarks("Anlage").Range
BetriebRa = Betrieb
ActiveDocument.Bookmarks.Add Name:="Anlage", Range:=BetriebRa
Dim BauRa As Range
Set BauRa = ActiveDocument.Sections(1).Headers(wdHeaderFooterPrimary).Range.Bookmarks("Bau").Range
BauRa = Bau
ActiveDocument.Bookmarks.Add Name:="Bau", Range:=BauRa
Exit Function
ErrHandling:
MsgBox "The following error ocurred: " & Err.Description & vbCrLf & "Location: " & Err.Source
End Function
Der Aufruf der Funktion sieht folgendermaßen aus:
'Kopfzeile einfügen
AppDoc = Kopfzeile(AppDoc, UserForm1.AenderungsIDE, UserForm1.BetriebE, UserForm1.BauE)
Kann mir da jemand weiterhelfen?
Danke euch und einen schönen Tag!
|