Mein erster Eintrag.
Problemstellung kurz:
ein in Excel gespeichertes Makro öffnet ein vorhandenes word dokument, füllt einige daten ein und soll dann als pdf gespeichert werden. der speicherpfad und der dateiname der zu erstellenden pdf soll aus werten, welche in zellen in der exceltabelle hinterlegt sind, generiert werden.
Folgender Code ist bereits vorhanden und nach langem Suchen nach einer Lösung bin ich, ohne Lösung, hier gelandet.
Ich hoffe, das Problem lässt sich irgendwie lösen. Besten Dank bereits im Voraus für Vorschläge.
Sub start_wordinvoice()
'Dieses Makro ist in Excel gespeichert
Dim wdApp As Object
Dim wdDoc As Object
Dim speicherpfad As String
Dim filename As String
Dim filenumber As String
speicherpfad = Worksheets("einstellungen_vorgänge").Range("G30").Value ' speicherpfadherkunft
filename = Worksheets("einstellungen_vorgänge").Range("G32").Value ' fester teil des _
dateinamens
filenumber = Worksheets("einstellungen_vorgänge").Range("G37").Value ' fortlaufende _
nummerierung des dateinamens
'öffnen der vorhandenen word vorlage (funktioniert)
'Open the word document
Set wdApp = CreateObject("Word.Application")
Set wdDoc = wdApp.documents.Open("Y:\rechnungsvorlage.dotm")
wdApp.Visible = True
' übergeben der Werte aus der exceltabelle an das worddokument (funktioniert)
'wdDoc.Bookmarks("username").Range.Text = Worksheets("einstellungen_vorgänge").Range("H38"). _
_
Value
'wdDoc.Bookmarks("datum").Range.Text = Worksheets("einstellungen_vorgänge").Range("H40"). _
Value
wdDoc.Bookmarks("rechnungsnr").Range.Text = Worksheets("einstellungen_vorgänge").Range("H37" _
_
).Value
wdDoc.Bookmarks("anzahl").Range.Text = Worksheets("einstellungen_vorgänge").Range("H39"). _
Value
wdDoc.Bookmarks("rechnungsbetrag1").Range.Text = Worksheets("printout_rechnungsbeilage"). _
Range("H30").Text
wdDoc.Bookmarks("rechnungsbetrag2").Range.Text = Worksheets("printout_rechnungsbeilage"). _
Range("H31").Text
wdDoc.Bookmarks("totalbetrag1").Range.Text = Worksheets("printout_rechnungsbeilage").Range(" _
_
H33").Text
wdDoc.Bookmarks("totalbetrag2").Range.Text = Worksheets("printout_rechnungsbeilage").Range(" _
_
H33").Text
' ab hier sollte die pdf version des worddokumentes erstellt werden (funktioniert nicht)
'Windows.wdApp("rechnungsvorlage.dotm").Activate
wdApp.Activate
wdDoc.Activate
'ChangeFileOpenDirectory _
speicherpfad
ActiveDocument.ExportAsFixedFormat OutputFileName:= _
speicherpfad & filename & filenumber _
, ExportFormat:=wdExportFormatPDF, OpenAfterExport:=True, OptimizeFor:= _
wdExportOptimizeForPrint, Range:=wdExportAllDocument, From:=1, To:=1, _
Item:=wdExportDocumentContent, IncludeDocProps:=False, KeepIRM:=True, _
CreateBookmarks:=wdExportCreateNoBookmarks, DocStructureTags:=True, _
BitmapMissingFonts:=True, UseISO19005_1:=False
ActiveWindow.Close savechanges:=no
End Sub