Домашняя страница Undo Do Save Карта сайта Обратная связь Поиск по форуму
МИР MS EXCEL - Гость.xls

Вход

Регистрация

Напомнить пароль

 

= Мир MS Excel/MS Word: "СЖАТЬ_ПРОБЕЛЫ" - Мир MS Excel

Старая форма входа
  • Страница 1 из 1
  • 1
Модератор форума: _Boroda_, китин  
MS Word: "СЖАТЬ_ПРОБЕЛЫ"
Alex_ST Дата: Вторник, 20.12.2011, 14:48 | Сообщение № 1
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Макрос СЖАТЬ_ПРОБЕЛЫ, размещённый в стандартном модуле Normal.dot (его вызов "привязан" к соответствующей кнопке на панели инструментов), удаляет многократные пробелы (включая и "неразрывные") в выделенном фрагменте документа:
[vba]
Код
Sub СЖАТЬ_ПРОБЕЛЫ()
        If Selection.Type <> wdSelectionNormal Then Exit Sub
        'Selection.Find.Execute FindText:="^w", MatchWildcards:=False, Format:=False, ReplaceWith:=" ", Replace:=wdReplaceAll ' пример развёрнутой записи аргументов метода Execute
        With Selection.Find
           .Execute "^w", , , , , 0, , , 0, " ", 2        ' заменить множественные пробелы на один
           .Execute "^p^w", , , , 0, , , , 0, "^p", 2   ' убрать пробелы в начале абзаца (после ^p)
           .Execute "^w^p", , , , 0, , , , 0, "^p", 2   ' убрать пробелы в конце абзаца (перед ^p)
        End With
End Sub
[/vba]



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Вторник, 20.12.2011, 20:53
 
Ответить
СообщениеМакрос СЖАТЬ_ПРОБЕЛЫ, размещённый в стандартном модуле Normal.dot (его вызов "привязан" к соответствующей кнопке на панели инструментов), удаляет многократные пробелы (включая и "неразрывные") в выделенном фрагменте документа:
[vba]
Код
Sub СЖАТЬ_ПРОБЕЛЫ()
        If Selection.Type <> wdSelectionNormal Then Exit Sub
        'Selection.Find.Execute FindText:="^w", MatchWildcards:=False, Format:=False, ReplaceWith:=" ", Replace:=wdReplaceAll ' пример развёрнутой записи аргументов метода Execute
        With Selection.Find
           .Execute "^w", , , , , 0, , , 0, " ", 2        ' заменить множественные пробелы на один
           .Execute "^p^w", , , , 0, , , , 0, "^p", 2   ' убрать пробелы в начале абзаца (после ^p)
           .Execute "^w^p", , , , 0, , , , 0, "^p", 2   ' убрать пробелы в конце абзаца (перед ^p)
        End With
End Sub
[/vba]

Автор - Alex_ST
Дата добавления - 20.12.2011 в 14:48
808 Дата: Пятница, 03.02.2012, 10:42 | Сообщение № 2
Группа: Пользователи
Ранг: Новичок
Сообщений: 44
Репутация: 10 ±
Замечаний: 0% ±

Да, отличный макрос, но когда у меня еще небыло ни интернета ни минимальных познаний в VBA я пользовался простым, довольно эффективным хотя и не таким удобным способом.

Crtl + F > Вкладка "Заменить" > В строке "Найти" ставил два пробела, в строке "Заменить на" один пробел и кликал по кнопке "Заменить все" столько раз, сколько требовалось чтобы убрать все множественные пробелы.
 
Ответить
СообщениеДа, отличный макрос, но когда у меня еще небыло ни интернета ни минимальных познаний в VBA я пользовался простым, довольно эффективным хотя и не таким удобным способом.

Crtl + F > Вкладка "Заменить" > В строке "Найти" ставил два пробела, в строке "Заменить на" один пробел и кликал по кнопке "Заменить все" столько раз, сколько требовалось чтобы убрать все множественные пробелы.

Автор - 808
Дата добавления - 03.02.2012 в 10:42
Alex_ST Дата: Пятница, 03.02.2012, 12:27 | Сообщение № 3
Группа: Друзья
Ранг: Участник клуба
Сообщений: 3213
Репутация: 609 ±
Замечаний: 0% ±

2003
Quote (808)
… и кликал по кнопке "Заменить все" столько раз, сколько требовалось чтобы убрать все множественные пробелы.
все мы когда-то так кликали…
Но я всё-таки очень быстро стал настолько продвинутым, что использовал не Crtl+F, а Crtl+H smile
А со временем совсем обленился и, чтобы самому не работать, изучил программирование и начал придумывать, как заставить компьютер делать за меня всякие рутинные операции … biggrin



С уважением,
Алексей
MS Excel 2003 - the best!!!


Сообщение отредактировал Alex_ST - Пятница, 03.02.2012, 12:28
 
Ответить
Сообщение
Quote (808)
… и кликал по кнопке "Заменить все" столько раз, сколько требовалось чтобы убрать все множественные пробелы.
все мы когда-то так кликали…
Но я всё-таки очень быстро стал настолько продвинутым, что использовал не Crtl+F, а Crtl+H smile
А со временем совсем обленился и, чтобы самому не работать, изучил программирование и начал придумывать, как заставить компьютер делать за меня всякие рутинные операции … biggrin

Автор - Alex_ST
Дата добавления - 03.02.2012 в 12:27
  • Страница 1 из 1
  • 1
Поиск:

Яндекс.Метрика Яндекс цитирования
© 2010-2024 · Дизайн: MichaelCH · Хостинг от uCoz · При использовании материалов сайта, ссылка на www.excelworld.ru обязательна!