Удаляем пустые абзацы из документа Word
Ужос, что за уродство Word? Понадобилось в большом объёме текста удалить лишние пустые абзацы, вставленные при копировании с Web-страницы после каждой строки. Но на попытку указать ^P
(символ "Абзац") в поле "Найти" стандартного окна поиска и замены, Word XP/2003 выдал "^P нельзя использовать как специальный символ в поле Найти". Пришлось быстренько подключить макрос.
Чтобы его "повесить" у себя, зайдите в меню Word Сервис, Макрос, Редактор Visual Basic, вставьте в модуль NewMacros текст процедуры, закройте Visual Basic, в верхнем меню Word зайдите Сервис, Настройка, в категории Макросы найдите макрос delVoidParagraphs
и перетащите его иконку из этого окна на нужную панель инструментов Word. Потом правая кнопка на добавленном значке, выбрать Основной стиль, затем так же правой кнопкой можно выбрать или нарисовать значок. Процедура описана для офиса XP/2003, в 2007/10 как-то так же, но неудобней, как и всё в нём.
У меня работает отлично, вот текст макроса:
Sub delVoidParagraphs() 'Удаление пустых абзацев в выделенном фрагменте With Selection.Find .ClearFormatting .Replacement.ClearFormatting .Text = "^0013{2;}" .Replacement.Text = "^p" .MatchWildcards = True .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
Избавиться от лишних символов разрыва строки, которые тоже часто появляются при копировании текста из интернета в Word, ещё проще: окно "Найти и заменить", в поле "Найти" указываем специальный символ ^l
(крышечка и буква l - "эль" латинская малая), поле "Заменить на" оставляем пустым и нажимаем кнопку "Заменить всё".
31.01.2011, 16:09 [21746 просмотров]