Хоть и странно, но отвечаю. Положим на форму кнопку, WordApplications и WordDocument (вкладка Servers).
Пишем Функцию поиска слова.
| Код | Function Tform1.Find(St:string):string; var a, b: OleVariant; j, ilengy: Integer; Nashli:boolean; begin Nashli:=false; ilengy:=Length(WordDocument1.Range.Text); j:=0; repeat a:=j; b:=j+Length(st); if WordDocument1.Range(a,b).Text=st then Nashli:=true; inc(j); until (j>=ilengy-Length(st)) or Nashli; if Nashli then Find:=WordDocument1.Range(a,b).Text; end;
|
И не забываем добавить функцию в класс TForm1
Теперь подключаемся к Doc файлу через компоненты со вкладки Servers, WordApplications и WordDocument.
| Код | procedure TForm1.Button1Click(Sender: TObject); var DocName,ConfConv,ReadOnly,AddToRecFiles,Psw,PswTmp,Revert,WritePsw,WritePswTmp, Fmt,replace,star :OleVariant; begin DocName:='word1.doc';//имя файла ConfConv:=False; ReadOnly:=False; AddToRecFiles:=False; Psw:=''; PswTmp:=''; Revert:=False; WritePsw:=''; WritePswTmp:=''; Fmt:=wdOpenFormatAuto; replace:=wdReplaceAll; WordApplication1.Connect; WordApplication1.Visible:=false;//не включаем видимость Ворда WordApplication1.Documents.Open(DocName, ConfConv, ReadOnly, AddToRecFiles, Psw, PswTmp, Revert, WritePsw, WritePswTmp, Fmt, EmptyParam,EmptyParam); WordDocument1.ConnectTo(WordApplication1.ActiveDocument); // Ищем, а затем выводим на экран Showmessage(Form1.Find('Да здравствует Ленин!')); //не забываем закрыть word WordDocument1.Close; WordApplication1.Disconnect; end;
|
|