![]() |
|
#1
|
|||
|
|||
![]() Нашел такую процедурку на форуме - FindAndPasteTextDoc- находит и заменяет текст, использую для собственных нужд -
Код:
...... FUNCTION FindAndPasteTextDoc(findtext_,pastetext_:string):boolean; BEGIN FindAndPasteTextDoc:=true; try W.Selection.Find.Forward:=true; W.Selection.Find.Text:= findtext_; if W.Selection.Find.Execute then begin W.Selection.Delete; W.Selection.InsertAfter (pastetext_); end else FindAndPasteTextDoc:=false; except FindAndPasteTextDoc:=false; end; END; ..... procedure TForm1.Button4Click(Sender: TObject); begin CreateWord; VisibleWord(true); OpenDoc('C:\1.doc'); FindAndPasteTextDoc('*DATA*','wwww'); FindAndPasteTextDoc('*MODEL*','1111'); FindAndPasteTextDoc('*SN*','22222'); end; |
#2
|
|||
|
|||
![]() А в чем проблема? Она на одну замену и расчитана...
Если хочешь все вхождения поменять вызывай в цикле, пока возвращает True. Или переделай внутри, что бы в цикле вызывалась: Код:
if W.Selection.Find.Execute then заменить на: Код:
While W.Selection.Find.Execute Do |
#3
|
|||
|
|||
![]() Вот именно -
Код:
for i:=1 to PG[Tek_PG].Edit_Count do begin if(PG[Tek_PG].Info_Edit[i].Word<>'') then FindAndPasteTextDoc(PG[Tek_PG].Info_Edit[i].Word ,TEdit(PG[Tek_PG].List_Edit[i-1]).text); end; |