Замена слов на Поле {eq} в Word

Анонимные
2015-11-25T16:27:10+00:00

Здравствуйте! Хотел бы узнать, как можно реализовать такую задачу в VBA: необходимо заменить каждое третье слово в тексте на поле {eq "каждое третье слово"}

Microsoft 365 и Office | Word | Для дома | Windows
Microsoft 365 и Office | Word | Для дома | Windows

Семейство программных продуктов Microsoft для обработки текстов, позволяющее создавать документы для интернета, электронной почты и печати.

Заблокированный вопрос. Этот вопрос был перенесен из сообщества службы поддержки Майкрософт. Вы можете проголосовать о его полезности, но не можете добавлять комментарии или ответы, а также подписаться на этот вопрос.

Комментариев: 0 Без комментариев

Ответы: 7

Сортировать по: Наиболее полезные
  1. Анонимные
    2015-11-27T11:53:00+00:00

    Мне непонятна цель, вашей задачи.

    Думайте сами, пишите макрос.

    Ваш будущий макрос, должен уметь:

    -определять границу каждой второй пары слов;

    -иметь свою базу слов, для каждого третьего слова (для вашего примера: возможности; влияние; на; этого);

    -вставлять после каждого второго слова, Поле EQ \L(Ваш текст из базы макроса).

    Этот ответ помог вам?

    Пользователи, которые сочли этот ответ полезным: 3.
    Комментариев: 0 Без комментариев
  2. Анонимные
    2015-11-26T09:56:28+00:00

    Исходный текст:

    Однако громадные возможности компьютеров оказали влияние не только на технические аспекты этого вида деятельности.

    Измененный текст:

    Однако громадные {eq возможности} компьютеров оказали {eq влияние} не только {eq на} технические аспекты {eq этого} вида деятельности.

    Как я это делаю:

    в ручную выполняю макрос: 

    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _

            "eq заменяемое слово", PreserveFormatting:=False

    Задача: автоматизировать макросом процесс замены слов в тексте на поле вида {eq "каждое третье слово в тексте"}.

    Должно получиться, что в макросе выполняется 1)Поиск в тексте каждого третьего слова 2) Замена этого слова на поле вида {eq "слово"}.

    Визуально, в тексте не видно поля {eq любое слово} выглядит это так:

    На деле это выглядит вот так:

    Этот ответ помог вам?

    Пользователи, которые сочли этот ответ полезным: 2.
    Комментариев: 0 Без комментариев
  3. Анонимные
    2015-11-26T05:02:06+00:00

    Да, я понимаю, что поле Eq предназначено для создания и вставки уравнений, но мне необходимо заменить текст и выдать его как уравнение. Пример: Однако громадные {eq возможности} компьютеров оказали {eq влияние} не только {eq на} технические аспекты {eq этого} вида деятельности.

    Замену провожу командой:

    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _

            "eq возможности", PreserveFormatting:=False

    Вопрос в том, как мне автоматизировать этот процесс, заменяю каждое третье слово в предложении на поле вида {eq "каждое третье слово"}

    В правильно заданном вопросе, на 99,9% содержится ответ.

    Перефразируйте Ваш вопрос, что бы он стал понятным не только Вам, но и другим Пользователям нашего Сообщества. Приведите корректные примеры того, что Вы ожидаете от применения Поля Eq, например:

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  4. Анонимные
    2015-11-25T21:55:07+00:00

    Да, я понимаю, что поле Eq предназначено для создания и вставки уравнений, но мне необходимо заменить текст и выдать его как уравнение. Пример: Однако громадные {eq возможности} компьютеров оказали {eq влияние} не только {eq на} технические аспекты {eq этого} вида деятельности.

    Замену провожу командой:

    Selection.Fields.Add Range:=Selection.Range, Type:=wdFieldEmpty, Text:= _

            "eq возможности", PreserveFormatting:=False

    Вопрос в том, как мне автоматизировать этот процесс, заменяю каждое третье слово в предложении на поле вида {eq "каждое третье слово"}

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев
  5. Анонимные
    2015-11-25T19:54:30+00:00

    Для поиска решения Вашего вопроса, обратитесь к нашей Библиотеке TechNet, начав со статьи "Изменения в Office 2013". Поле eq предназначено для создания и вставки уравнений.

    Этот ответ помог вам?

    Комментариев: 0 Без комментариев