Здравствуйте, YUKLA, Вы писали:
YUK>Уважаемые Господа!
YUK>Есть функция:
YUK>YUK>Procedure FindAndReplaceInWordDoc(WD:TWordDocument;Const oStr,nStr:string);
YUK>Var
YUK> oldString, newString, Replace:OleVariant;
YUK>Begin
YUK>//Замена всех строк oStr на строку nStr в открытом документе Word2000
YUK> Replace :=wdReplaceAll; oldString:=oStr; newString:=nStr;
YUK> WD.Range.Find.Execute(oldString, EmptyParam, EmptyParam, EmptyParam,
YUK> EmptyParam, EmptyParam, EmptyParam, EmptyParam,
YUK> EmptyParam, newString, Replace,EmptyParam,EmptyParam,EmptyParam,EmptyParam);
YUK>End;
YUK>
YUK>Она используется ШИРОКО в коде нескольких программ. Происходит замена некоторых строк из шаблона (например @Up ) на строки, сформированные программой.
YUK>Среда — Delphi 5 + SP#1, Word 2000 + SP#3, используются компоненты те, что для Office 2000 (dcloffice2k50.bpl).
YUK>В случае если длина строки больше 255 символов получаем надпись "Слишком длинный строковый параметр". Что делать?
YUK>Не подскажите ли, как обойти данное ограничение?
YUK>С уважением.
Попробую переформулировать мой вопрос — "Можно ли как-нибудь иначе чем с помощью Range.Find.Execute(...) произвести замену строки на другую строку в открытом документе MS Word средствами Delphi?"
С уважением.