Thema: Delphi Word 2010 Serienbrief

Einzelnen Beitrag anzeigen

Eppos

Registriert seit: 7. Aug 2006
Ort: Heilbronn
523 Beiträge
 
Delphi 11 Alexandria
 
#1

Word 2010 Serienbrief

  Alt 10. Feb 2012, 15:27
Hallo zusammen,

ich würde gerne aus einer Datenbank (Firebird), Daten auslesen und in eine Wordvorlage übertragen.
Dies ist mir bisher nicht gelungen. Hier ist mein code und der Kommentar wo der Fehler kommt.
Ich arbeite mit MS Word 2010

Delphi-Quellcode:
procedure TForm3.Button1Click(Sender: TObject);
var FileName, NewFile : OleVariant;
    Mail : MailMerge;
    Pause, vWhat, vBookmark : OleVariant;
begin
  FileName := 'C:\Datenbank\Paramaufruf.dotx';
  NewFile := ExtractFilePath(FileName) + 'Brief.docx';

  WordApplication.Connect;
  WordApplication.Documents.OpenOld( FileName, EmptyParam, EmptyParam, EmptyParam,
                                     EmptyParam, EmptyParam, EmptyParam, EmptyParam,
                                     EmptyParam, EmptyParam );
  WordDocument.ConnectTo(WordApplication.ActiveDocument);
  WordApplication.Visible := True;
  Pause := True;
  Mail := WordDocument.MailMerge;
  Mail.Destination := wdSendToNewDocument; // Hier kommt es zum Fehler --> "Das angeforderte Objekt ist nicht verfügbar"
  Mail.Execute( Pause );
  ShowMessage( 'Fertig' );
  WordDocument.Close;
  WordDocument.Disconnect;
  WordDocument.ConnectTo(WordApplication.ActiveDocument);
  WordDocument.SaveAs(newFile);
  WordDocument.Disconnect;
  WordApplication.Quit;
  WordApplication.Disconnect;
end;
Hat jemand eine Idee?
Gibt es auch schon fertige Komponenten?
Gibt es vielleicht jemand, der dies anders gelöst hat?

Vielen Dank für die Rückmeldungen!

Eppos
  Mit Zitat antworten Zitat