1

Тема: Способ ручного удаления лишних абзацев в тексте

Часто возникает необходимость в быстром удалении вручную лишних абзацев в тексте.
Предлагаем один из способов выполнения данной задачи, который представляется нам довольно удачным.
Ниже приведены два несложных макроса - DelEnter и NextEnter. Первый из них удаляет выделенный знак абзаца и переходит к следующему знаку абзаца. Второй макрос выполняет поиск следующего знака абзаца без удаления.
Внимание! Данные макросы действуют только для стандартных знаков абзаца (^p) (в то время, как абзацы могут быть отмечены и другими типами знаков - например, "разрыв строки" (^l) и др.)
Для удобства я назначил макросам находящиеся рядом комбинации клавиш: Ctrl+Shift+< для первого макроса и Ctrl+Shift+> для второго макроса.

Sub DelEnter()
    'удаление выделенного знака абзаца (в случае, если имеется такое выделение)
    If Selection.Range.Text <> "" Then
        Selection.Delete Unit:=wdCharacter, Count:=1
        Selection.TypeText Text:=" "
    End If

    'поиск следующего знака абзаца 
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
         .Text = "^p"
         .Replacement.Text = ""
         .Forward = True
         .Wrap = wdFindContinue
    End With
    Selection.Find.Execute
End Sub
Sub NextEnter()
    'поиск следующего знака абзаца 
    Selection.Find.ClearFormatting
    Selection.Find.Replacement.ClearFormatting
    With Selection.Find
         .Text = "^p"
         .Replacement.Text = ""
         .Forward = True
         .Wrap = wdFindContinue
    End With
    Selection.Find.Execute
End Sub

Далее нажимаем комбинации клавиш Ctrl+Shift+> (вызывая макрос NextEnter) и смотрим, нужно ли удалять выделенный знак абзаца.
Если нужно, то нажимаем Ctrl+Shift+< (макрос DelEnter), если же не нужно, то повторяем нажатие комбинации клавиш Ctrl+Shift+> (макрос NextEnter).

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.

2

Re: Способ ручного удаления лишних абзацев в тексте

Побочный эффект данного способа заключается в том, что могут быть добавлено некоторое количество двойных пробелов.
По окончании процесса нужно будет однократно удалить из файла все двойные пробелы:
Вызов окна Найти и заменить: Ctrl+H
Найти: два пробела
Заменить: один пробел
Кнопка Заменить все

Удобной и приятной работы в Word!
Перевести спасибо на Яндекс кошелёк - 41001162202962; на WebMoney - R581830807057.