@Vetka_in_code

Как редактировать абзацы?

Помогите выполнить 2 пункт задания, т.к. 1 пункт, вроде, выполнен(код ниже).

Задание:
Написать макрос (компьютер) форматирования текста по следующим критериям:
1. Выделить все слова в тексте, начинающиеся с заданных символов (например: «компьютер») красным курсивом.
2. Те абзацы, в которых встретились эти слова, отформатировать следующим образом: отступ – 1,6 см; межстрочный интервал – одинарный.

Sub Task()
Dim s
  With ActiveDocument.Range.Find
    .ClearFormatting
    .Replacement.ClearFormatting
    .Replacement.Font.Italic = True
    .Replacement.Font.Color = wdColorRed
    .Forward = True
    .Wrap = wdFindContinue
    .Format = True
    .MatchCase = False
    .MatchWholeWord = True
    .MatchWildcards = False
    .MatchSoundsLike = False
    .MatchAllWordForms = False
    For Each s In Split("компьютер")
      .Execute s, Replace:=wdReplaceAll
    Next
  End With
End Sub
  • Вопрос задан
  • 50 просмотров
Пригласить эксперта
Ответы на вопрос 1
honor8
@honor8
Принципы быстродействия VBA в описании
Применимо к выделенному абзацу, так:
With Selection.ParagraphFormat
  .LineSpacingRule = wdLineSpaceSingle
  .FirstLineIndent = CentimetersToPoints(1.6)
End With
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы