Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 31.05.2011, 08:36   #1
Aleksey1989
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 127
По умолчанию Проблема с поиском в ворде

Добрый день. Помогите решить следующую проблему:

Мне нужно в документе Word отыскать текст и заменить его на нужный. Вот код функции, заменяющей данный текст:

Код:
function TFormDogReclama.FindAndReplace2(const FindText,
  ReplaceText: WideString): boolean;
const wdReplaceAll = 2;
begin
  Word.Selection.Find.MatchSoundsLike := False;
  Word.Selection.Find.MatchAllWordForms := False;
  Word.Selection.Find.MatchWholeWord := False;
  Word.Selection.Find.Format := False;
  Word.Selection.Find.Forward := True;
  Word.Selection.Find.ClearFormatting;
  Word.Selection.Find.Text:=FindText;
  Word.Selection.Find.Replacement.Text:=ReplaceText;
  FindAndReplace2:=Word.Selection.Find.Execute(Replace:=wdReplaceAll);
Проблема заключается в том, что если в качестве 2-го параметра я поставлю большой текст, т.е. его длина будет превышать 255 символов, то возникает ошибка "слишком длинный строковый параметр". Как мне обойти эту ошибку?
Aleksey1989 вне форума Ответить с цитированием
Старый 31.05.2011, 12:27   #2
Aleksey1989
Форумчанин
 
Регистрация: 25.04.2010
Сообщений: 127
По умолчанию

Ну все, эту проблему обошел. Появилась другая: найденный текст я заменяю на следующий:
Цитата:
1.1.1. Изготовить и организовать распространение рекламной информации о товарах (работах, услугах) Заказчика и его товарных знаках.
1.1.2. Обеспечить распространение пробных партий товаров и сувениров с товарным знаком Заказчика.
1.1.3. Доводить до сведения клиентов Исполнителя информацию о Заказчике (наименование, местонахождение, часы работы, контактные телефоны).
Результат в ворде выглядит примерно так:

Цитата:
______1.1.1. Изготовить и организовать распространение рекламной информации о товарах (работах, услугах) Заказчика и его товарных знаках.
1.1.2. Обеспечить распространение пробных партий товаров и сувениров с товарным знаком Заказчика.
1.1.3. Доводить до сведения клиентов Исполнителя информацию о Заказчике (наименование, местонахождение, часы работы, контактные телефоны).
П.с. вместо "______" абзацный отступ.

Т.е. для 1-го пункта есть красная строка, а для 2-х других её нету, она является продолжением 1-го пункта (абзацный отступ такой же). Пробовал добавить #13, но все равно ничего не выходит, пункт просто опускается на одну строку вниз. Что посоветуете?

Последний раз редактировалось Aleksey1989; 31.05.2011 в 12:30.
Aleksey1989 вне форума Ответить с цитированием
Старый 09.08.2013, 14:24   #3
dolphin705
Форумчанин
 
Аватар для dolphin705
 
Регистрация: 02.08.2008
Сообщений: 213
Вопрос

Подскажите как решили проблему с длинной?
dolphin705 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Проблема с поиском файлов AleksNEW Общие вопросы Delphi 4 18.04.2010 15:11
Проблема с поиском в БД Evgenii БД в Delphi 15 25.06.2009 00:14
Проблема с поиском решения mavs Microsoft Office Excel 4 20.04.2009 15:52
проблема с гиперссылками в ворде plaksa Microsoft Office Word 2 09.01.2009 14:47
Проблема с поиском Zeraim Microsoft Office Access 2 04.06.2008 05:42