Mega Code Archive

 
Categories / Delphi / Activex OLE
 

Automate Word with OLE

Title: automate Word with OLE? uses comobj; procedure TForm1.Button1Click(Sender: TObject); var Word: OLEVariant; begin try Word := CreateOleObject('Word.Application'); except ShowMessage('Cannot start Word !'); Exit; end; // Show Word Word.Visible := True; // Add a new Document Word.Documents.Add; if Word.ActiveWindow.View.SplitSpecial 0 then Word.ActiveWindow.Panes[2].Close; if (Word.ActiveWindow.ActivePane.View.type = 1) or (Word.ActiveWindow.ActivePane.View.type = 2) or (Word.ActiveWindow.ActivePane.View.type = 5) then Word.ActiveWindow.ActivePane.View.type := 3; Word.ActiveWindow.ActivePane.View.SeekView := 9; Word.Selection.Font.Name := 'Times New Roman'; Word.Selection.Font.Size := 12; Word.Selection.Font.Bold := True; Word.Selection.ParagraphFormat.Alignment := 1; Word.Selection.TypeText(Text := 'Kohlenhandel Brikett-GmbH & Co.-KG. - Holzweg 16 - 54633 Steinhausen'); if Word.Selection.HeaderFooter.IsHeader = True then Word.ActiveWindow.ActivePane.View.SeekView := 10 else Word.ActiveWindow.ActivePane.View.SeekView := 9; Word.Selection.TypeText(Text := 'Bankverbindung: Stadtsparkasse Steinhausen BLZ 123456789 KtoNr. 782972393243'); Word.ActiveWindow.ActivePane.View.SeekView := 0; Word.Selection.TypeText(Text := Edit2.Text + ' ' + edit1.Text); Word.Selection.TypeParagraph; Word.Selection.TypeText(Text := edit3.Text); Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.Font.Name := 'Times New Roman'; Word.Selection.Font.Size := 12; Word.Selection.Font.Bold := True; Word.Selection.TypeText(Text := edit4.Text + ' ' + edit5.Text); Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.Font.Name := 'Arial'; Word.Selection.Font.Size := 14; Word.Selection.Font.Bold := True; Word.Selection.TypeText(Text := Combobox1.Text); Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.TypeParagraph; Word.Selection.Font.Name := 'Times New Roman'; Word.Selection.Font.Size := 12; Word.Selection.Font.Bold := True; if radiogroup1.ItemIndex = 0 then Word.Selection.TypeText(Text := 'Sehr geehrter Herr ' + edit1.Text) else Word.Selection.TypeText(Text := 'Sehr geehrte Frau ' + edit1.Text); end;