Статьи из блога

Статьи из блога

Удаление пустых абзацев

Рубрика: Макросы, Вопрос-Ответ
Метки:
Четверг, 13 мая 2010 г.
Просмотров: 4717
Подписаться на комментарии по RSS
Версия для печати

[Ссылки на статью]

Дмитрий спрашивает:

Использую макрос, удаляющий ненужный междустрочный интервал. Но применяется он ко всему тексту в документе, а как сделать так, чтобы изменения вносились только в выделенном фрагменте, а без выделения — во всем документе?

В этом случае вы можете воспользоваться следующим макросом:

Sub delPilcrows()
'Удаление пустых абзацев только в выделенном фрагменте или во всем документе
With Selection.Find
   .ClearFormatting
   .Replacement.ClearFormatting
   .Text = "[^13]{1;}"   'искомый знак абзаца (один или больше)
   .Replacement.Text = "^p"   'заменяем на один знак абзаца
   .Format = False
   .Forward = True
   If Selection.Type = wdSelectionIP Then
      .Wrap = wdFindContinue
   Else
      .Wrap = wdFindStop
   End If
   .Execute Replace:=wdReplaceAll
End With
Selection.Collapse direction:=wdCollapseStart   'снимаем выделение
End Sub
]]>twitter.com facebook Вконтакте Google Buzz google.com bobrdobr.ru del.icio.us technorati.com linkstore.ru news2.ru rumarkz.ru memori.ru moemesto.ru]]>

Комментариев: 1

  1. 19.07.2010 в 14:18 | #1

    Небольшое уточнение. По-моему, лучше так:

    .Text = "^0013{2;}"   'искомый знак абзаца (один или больше)
    .Replacement.Text = "^p"   'заменяем на один знак абзаца
    .MatchWildcards = True

Оставьте комментарий!

(обязательно)

^ Наверх