>>>>"a) Entrada de R$ %2.816,52 (Dois Mil Oitocentos e Dezesseis Reais e >>>>Cinqüenta e Dois Centavos )%% em %2 (Duas )%% parcelas %NÃO REAJUSTÁVEIS e SEM >>>>JUROS%%, sendo a primeira no valor de R$ %1.408,26%% no dia %15/03/2004%%, e a >>>>segunda no valor de R$ %1.408,26%% no dia %15/04/2004%%" >>>>>>>>Im replacing the text in Word this way..
>>>>LOCAL oWord AS "Word.Application" >>>>IF TYPE("oWord") <> "O" >>>> oWord = CREATEOBJECT("Word.Application") >>>>ENDIF >>>> >>>>oWord.VISIBLE = .F. >>>>loSelection = oWord.ActiveWindow.ActivePane.SELECTION >>>>loSelection.FIND.ClearFormatting() >>>> >>>>WITH loSelection.FIND >>>> .TEXT = "@@TEXT1" >>>> .Replacement.TEXT = "" >>>> .Forward = .T. >>>> .WRAP = wdFindContinue >>>> .FORMAT = .F. >>>> .MatchCase = .F. >>>> .MatchWholeWord = .F. >>>> .MatchWildcards = .F. >>>> .MatchSoundsLike = .F. >>>> .MatchAllWordForms = .F. >>>>ENDWITH >>>> >>>>loSelection.FIND.TEXT = "@@TEXT1" >>>>loSelection.FIND.Execute() >>>>loSelection.TypeText(TRIM(VFP_VAR1)) >>>>loSelection.GOTO(3,1,1) >>>>>>>>
>oWord.ActiveDocument.Variables(tcVarName).value = cValue
>
>or :>with oWord.ActiveDocument > .Range(.Bookmarks(tcBookmarkName).Range.Start, ; > .Bookmarks(tcBookmarkName).Range.End).Text = m.tcText >endwith >>
>#include wdconstants.h >#Define NL Chr(13)+Chr(10) >*** set the LOCALEID to English >nlLocaleId=Sys(3004) && Save local id >=Sys(3006,1033) && We will be sending instructions in English > >Use employee && test table >m.lcFileName = Sys(5)+Curdir()+'myBoookmarkTest.doc' >oWordDocument=Createobject("word.application") && Create word object >With oWordDocument > .Documents.Add && Create a new doc > Scan > .Selection.TypeText(Transform(emp_id)+NL+First_Name-(' '+Last_Name)+NL) > .Selection.Collapse(wdCollapseEnd) > lnRangeStart = .Selection.Range.End > .Selection.TypeText(Nvl(notes,'')+NL+NL) > lnRangeEnd = .Selection.Range.End > .Activedocument.Bookmarks.Add('b'+Alltrim(Transform(emp_id)),; > .Activedocument.Range(lnRangeStart,lnRangeEnd)) > Endscan > .Activedocument.SaveAs(m.lcFileName) > .Activedocument.Saved = .T. > .Quit >Endwith > >* Now create a new file based on saved template >* and change text based on bookmarks >Select employee >lcEmployeeRecnos = '1,3,4,5,6' >lnEmployee = Alines(aEmpNo,lcEmployeeRecnos,.T.,',') >Dimension aBookmarks[lnEmployee,2] && Change text for only few employee >For ix=1 To lnEmployee > Go Val(aEmpNo[m.ix]) > aBookmarks[m.ix,1] = 'b'+Alltrim(Transform(emp_id)) > aBookmarks[m.ix,2] = 'Notes for employee '+First_Name-(' '+Last_Name)+NL+NL >Endfor > >oWord = Createobject('Word.Application') >With oWord > .Documents.Add(m.lcFileName) && New file based on template file > For ix=1 To Alen(aBookmarks,1) > With .Activedocument.Bookmarks(aBookmarks[m.ix,1]).Range > .Text = aBookmarks[m.ix,2] > .Font.Color = Rgb(255,0,0) > .Font.Bold = .T. > Endwith > Endfor > .Visible = .T. > .Activate >Endwith >**** Set the LocaleId to the previous value >=Sys(3006,Val(nlLocaleId)) >>PS: If you still want to use find/replace approach :