unit Unit1;
interface
uses
Windows, Messages, SysUtils, Classes, Graphics, Controls, Forms, Dialogs, comObj;
type
TForm1 =
class(TForm)
procedure FormShow(Sender: TObject);
private
public
end;
var
Form1: TForm1;
implementation
{$R *.DFM}
procedure wordformular;
const
wdFindContinue = 1;
wdReplaceOne = 1;
wdReplaceAll = 2;
var Word: Variant;
doc: OleVariant;
WordTabelle: OleVariant;
begin
screen.Cursor := crHourglass;
try
// Läuft Word noch nicht, wird eine neue Verbindung aufgebaut
Word := CreateOleObject('
Word.Application');
except
// Schlägt sie fehl (Word nicht installiert), gibt es eine Fehlermeldung
ShowMessage('
Microsoft Word kann nicht starten.');
screen.cursor := crDefault;
exit;
end;
Word.Documents.Add;
word.visible := true;
//Übergabe des aktiven Dokuments in die Variable doc
doc := word.ActiveDocument;
//Tabelle erzeugen mit 5 Zeilen und 5 Spalten
WordTabelle := doc.Tables.Add(Word.selection.range, 5, 5,
emptyParam,emptyParam) ;
//!!!!!!!!!!!Der Index einer Tabelle in Word beginnt immer mit 1,
//nicht mit 0 wie in Delphi!!!!!!!!!!!!!!!!!!!!!!!
//Schriftgröße in der 2. Zeile und 2. Spalte auf 14 setzen
WordTabelle.cell(2,2).range.font.size := 14;
//Schriftgrad in der 2. Zeile und 2.Spalte aud Fett setzen
WordTabelle.cell(2,2).range.font.bold := true;
//Textübergabe in die 2. Zeile und 2. Spalte
WordTabelle.cell(2,2).range.text := '
Hallo Welt';
word.Selection.Find.ClearFormatting;
word.Selection.Find.Text := '
Hallo Welt';
word.Selection.Find.Replacement.Text := '
ich'+#$D+'
bin'+#$D+'
da';
word.Selection.Find.
Forward := True;
word.Selection.Find.Wrap := wdFindContinue;
word.Selection.Find.Format := False;
word.Selection.Find.MatchCase := False;
word.Selection.Find.MatchWholeWord := False;
word.Selection.Find.MatchWildcards := False;
word.Selection.Find.MatchSoundsLike := False;
word.Selection.Find.MatchAllWordForms := False;
// Hier kann ein Haltepunkt gesetzt werden um im geöffneten Word-Dokument ein zusätzliches
// Hallo Welt, außerhalb der Tabelle einzufügen
word.Selection.Find.Execute(Replace := wdReplaceAll);
word.Application.Quit;
end;
procedure TForm1.FormShow(Sender: TObject);
begin
wordformular();
end;
end.