Guten Tag,
ich habe angefangen, mich mit den Zugriffen auf MS Word zu beschäftigen, komme aber nicht zurecht, weil mir Quellen zu diesem Thema ganz unterschiedliche Informationen bieten. Es fängt schon beim Zugriff an. Im Buch
Borland Delphi 7 habe ich diesen Zugriff gefunden:
Delphi-Quellcode:
uses comobj;
{$R *.DFM}
var word: variant;
procedure TForm1.Button1Click(Sender: TObject);
begin
word := CreateOleObject('Word.Application');
word.visible := True;
word.Documents.Open(FileName:= ExtractFilePath(Paramstr(0)) + 'name.doc');
end
Bei Delphi-Treff steht nun etwas (komplett) anderes unter der Verwendung von TWordApplication:
Delphi-Quellcode:
procedure TForm1.FormCreate(Sender: TObject);
begin
WordApplication:=TWordApplication.create;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if assigned(WordApplication) then
begin
WordApplication.Connect;
WordApplication.Visible:=true;
end;
end;
Es ist doch gleichtültig, welche Variante ich verwende, oder übersehe ich etwas?
Und wie funktioniert es, dass ich ein ganz neues Dokument mit Delphi erstellen kann? Ich habe schon so mit der TWordDocument-Komponente versucht:
Delphi-Quellcode:
Dokument: TWordDocument; //Öffentliche Deklarationen
Word: TWordApplication
...
Dokument := TWordDocument.Create(Self) //Erstellen im OnCreate-Ereignis
...
//Beim Klicken auf einen Button
Dokument.Connect;
Word.NewDocument;
Word.NextLetter
Und drittens: Wie funktioniert es mit dem Zugriff auf
ActiveX-Steuerelemente wie der TextBox (Edit) etc.? In
Borland Delphi 7 wurde es mit "Formulare aus der Vorversion" realisiert (Aber dort fine ich keine TextBoxen...), wie es in MS Word heißt:
word.ActiveDocument.FormFields.Item('Text1').Result := edit1.text;
So klappt der Zugriff auf die
ActiveX-Steuerelemente allerdings nicht, es treten immer Laufzeitfehler auf.
Ich wäre schon dankbar, wenn eine Verlinkung zu einem sehr vollständigen Tutorial gepostet würde.
mfg.