Нетрудно было догадаться — просто переведя с английского языка значения слов, входящих в команды: «Selection» — выделение, "Find.Replacement" — найти и заменить, «ParagraphFormat» — формат абзаца, «Alignment» — выравнивание, "AlignParagraphJustify" — «РавнятьАбзацПоШирине». Что ж, ясно. Оператор «With» нам уже знаком — в следующим за разобранными нами строчками фрагменте речь пойдет об окне "Найти и заменить".

Легко сообразить, что все параметры обьекта "Selection.Find" (то есть поиска в выделенной части текста или во всем тексте) соответствуют параметрам окна "Найти и заменить": ".MatchWholeWord" — "искать целое слово", ".MatchCase" — "учитывать регистр".".Text" — здесь, наверное, надо указать заменяемый текст, а".Replacement.Text" — здесь то, на что заменить. В нашем случае заменять надо не текст, а форматирование, поэтому эти строчки пусты.

Заметив повторения слов "Selection.Find" в первых четырех строчках, можно посчитать, что и их содержимое можно включить в блок оператора «With». Проверим-ка это. Чуть ниже последнего записанного нами макроса напишем строчку: "Sub experience1()" (имя после «Sub» может быть любым, важно лишь, чтобы оно не совпадало с какой-либо командой VBA). Нажмем Ввод — парой строчек ниже редактор VBA напишет: "End Sub". С помощью команд «Копировать» и «Вставить» скопируем из нашей программы в текст нового макроса блок "With Selection.Find". А затем переместим все строчки, относящиеся к отражению в макросе работы окна "Найти и заменить" в блок "With Selection.Find", убрав слова "Selection.Find":

Sub experience1()

With Selection.Find

ClearFormatting

ParagraphFormat.Alignment = wdAlignParagraphLeft

Replacement.ClearFormatting

Replacement.ParagraphFormat.Alignment = wdAlignParagraphJustify



56 из 489