На главную Наши проекты:
Журнал   ·   Discuz!ML   ·   Wiki   ·   DRKB   ·   Помощь проекту
ПРАВИЛА FAQ Помощь Участники Календарь Избранное RSS
msm.ru
! user posted image
Пожалуйста, выделяйте текст программы тегом [сode=pas] ... [/сode]. Для этого используйте кнопку [code=pas] в форме ответа или комбобокс, если нужно вставить код на языке, отличном от Дельфи/Паскаля.

Соблюдайте общие правила форума

Следующие вопросы задаются очень часто, подробно разобраны в FAQ и, поэтому, будут безжалостно удаляться:
1. Преобразовать переменную типа String в тип PChar (PAnsiChar)
2. Как "свернуть" программу в трей.
3. Как "скрыться" от Ctrl + Alt + Del (заблокировать их и т.п.)
4. Как запустить программу/файл? (и дождаться ее завершения)
5. Как перехватить API-функции, поставить hook? (перехват сообщений от мыши, клавиатуры - внедрение в удаленное адресное прстранство)
... (продолжение следует) ...

Внимание:
Попытки открытия обсуждений реализации вредоносного ПО, включая различные интерпретации спам-ботов, наказывается предупреждением на 30 дней.
Повторная попытка - 60 дней. Последующие попытки - бан.
Мат в разделе - бан на три месяца...

Полезные ссылки:
user posted image MSDN Library user posted image FAQ раздела user posted image Поиск по разделу user posted image Как правильно задавать вопросы


Выразить свое отношение к модераторам раздела можно здесь: user posted image Rouse_, user posted image Krid

Модераторы: Rouse_, Krid
  
> Работа с WORD , Заменить текст таблицы в WORD на другой текст
    Здравствуйте!!! Мне нужно во всех таблицах текстового документа DOC заменить определенное слово(предложение) на другое. Помогите пожалуйста?! За раннее спасибо!
      Aleksey_Kos, у тебя проблема в том, чтобы заменить слово только в таблицах, а вне таблиц оставить что-ли?
      ExpandedWrap disabled
        procedure TForm1.Button1Click(Sender: TObject);
        const
          wdReplaceOne = 1;
          wdReplaceAll = 2;
          wdDoNotSaveChanges = 0;
         
          wdFindStop = 0;
          wdFindContinue = 1;
          wdFindAsk = 2;
        var
          WordApp: OleVariant;
          i: integer;
        begin
          WordApp := CreateOLEObject('Word.Application');
          WordApp.Visible := False;
          WordApp.Documents.Open('F:\Programs\tbls.doc');
         
          WordApp.Selection.Find.ClearFormatting;
          WordApp.Selection.Find.Text := 'old';
          WordApp.Selection.Find.Replacement.Text := 'new';
          WordApp.Selection.Find.Forward := True;
          WordApp.Selection.Find.Wrap := wdFindStop; // <---
          WordApp.Selection.Find.Format := False;
          WordApp.Selection.Find.MatchCase := False;
          WordApp.Selection.Find.MatchWholeWord := False;
          WordApp.Selection.Find.MatchWildcards := True;
          WordApp.Selection.Find.MatchSoundsLike := False;
          WordApp.Selection.Find.MatchAllWordForms := False;
         
          for i := 1 to WordApp.ActiveDocument.Tables.count do begin
            WordApp.ActiveDocument.Tables.Item(i).Select;
            WordApp.selection.Find.Execute(Replace := wdReplaceAll);
          end;
         
          WordApp.ActiveDocument.SaveAs('F:\Programs\tbls.doc');
          WordApp.ActiveDocument.Close(wdDoNotSaveChanges);
          WordApp.Quit;
          WordApp := Unassigned;
        end;
      Устроит?
        Спасибо большое! Вообще мне нужно заменить слово и в таблице и вне таблицы(в тексте), но для текста я уже сделал. Завтра проверю твой код, спасибо!

        Добавлено
        Спасибо, работает. Еще хотел бы узнать такую вещь... Можно ли заменить слово в поле ввода. Я имею в виду - домустим есть у нас блок-схема с разными блоками, в блоке написано слово, вот - можно ли это слово заменить программно?!
          volvo877 Еще хотел бы узнать такую вещь... Можно ли заменить слово в поле ввода. Я имею в виду - домустим есть у нас блок-схема с разными блоками, в блоке написано слово, вот - можно ли это слово заменить программно?!
          0 пользователей читают эту тему (0 гостей и 0 скрытых пользователей)
          0 пользователей:


          Рейтинг@Mail.ru
          [ Script execution time: 0,0529 ]   [ 16 queries used ]   [ Generated: 28.03.24, 10:28 GMT ]