1: 2: 3: 4: 5: 6: 7: 8: 9: 10: 11: 12: 13: 14: 15: 16: 17: 18: 19: 20: 21: 22: 23: 24: 25: 26: 27: 28: 29: 30: 31: 32: 33: 34: 35: 36: 37: 38: 39: 40:
| Procedure MachEinSerienBrief(Titel:TRichEdit; DBQuelle: String; DBFelder:TStringlist; VertAbstand: Integer; HorAbstand: Integer); var Word: OLEVariant; i:integer; SHorAbstand:String; begin try WordApp:=GetActiveOleObject('Word.Application'); except try WordApp:=CreateOleObject('Word.Application'); except ShowMessage('Microsoft Word kann nicht starten.'); screen.cursor:=crDefault; exit; end; end; Word.ActiveDocument.MailMerge.MainDocumentType:= wdFormLetters; titel.SelectAll; titel.CopyToClipboard; Word.Selection.paste; word.ActiveDocument.MailMerge.OpenDataSource(DBQuelle,'SELECT * FROM [" '+ DBQuelle +' "]"'); Word.ActiveDocument.MailMerge.EditMainDocument; for i:=0 to VertAbstand do begin Word.Selection.TypeParagraph; end; SHorAbstand:=''; for i:=0 to HorAbstand do begin SHorAbstand:=SHorAbstand+' '; end; for i:=0 to DBFelder.Count-1 do begin Word.Selection.TypeText(SHorAbstand); Word.ActiveDocument.MailMerge.Fields.Add(Word.Selection.Range,DBFelder.Strings[i]); Word.Selection.TypeParagraph; end; Word := Unassigned; end; |