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

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

Удаление пробела у выделенного слова

Рубрика: Макросы, Стили и форматирование
Метки: |
Пятница, 10 октября 2008 г.
Просмотров: 6824
Подписаться на комментарии по RSS
Версия для печати

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

Если вы часто редактируете тексты, то вероятно замечали, что при двойном щелчке на слове выделяется не только само слово, но и стоящий за ним пробел справа (если только после слова не идет знак пунктуации):

 

 

Такое поведение редактора нежелательно, если вы применяете к выделенному слову полужирное начертание (ну, или другое форматирование). Ведь в этом случае когда вы снимите выделение и продолжите ввод текст после данного слова, следующий текст также будет иметь полужирное начертание.

 

Поскольку мне самому такое поведение редактора уже порядком надоело, то я решил эту проблему следующим образом. Я написал небольшой макрос и вывел его в виде кнопки на панель инструментов. После того, как я выделяю двойным щелчком какое-либо слово, я применяю макрос. А макрос уже самостоятельно исключает из выделения пробел и применяет к слову полужирное начертание (я использую соответствующий стиль). Просто и быстро, и нет нужды совершать дополнительные действия мышью или клавишами.

 

Вот код макроса для тех, кто не использует стили. Выполнив его, к вашему выделенному слову (или словосочетанию) будет применено полужирное начертание. Вы можете изменить действие макроса на другое, нужное вам.

 

Sub BoldSelectText()
'оформление выделенного текста полужирным начертанием
'убирает лишний пробел в конце выделения
If Selection.Type = wdSelectionIP Then
   MsgBox "Не выделен текст"
Else
   With Selection
      If Right(Selection.Text, 1) = Chr(32) Then
         .MoveLeft wdCharacter, 1, wdExtend
      End If
      .Font.Bold = True
   End With
End If
End Sub

 

Если вы используете свои стили для полужирного начертания, то измените строку кода ".Font.Bold = True" на строку ".Style = "ЖирнШрифт"", где в кавычках вставьте название вашего стиля полужирного начертания.

 

Если вы не знаете, как подключить к документу и применить этот макрос, изучите следующие заметки с сайта:

Создание макроса из готового кода

Автоматическая запись макроса

twitter.com facebook.com vkontakte.ru odnoklassniki.ru mail.ru ya.ru rutvit.ru myspace.com technorati.com digg.com friendfeed.com pikabu.ru blogger.com liveinternet.ru livejournal.ru memori.ru google.com bobrdobr.ru mister-wong.ru yahoo.com yandex.ru del.icio.us

Еще записи по вопросам использования Microsoft Word:

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

  1. pkorney
    10.10.2008 в 13:22 | #1

    Правильно я понял, что каждый раз Вы применяете макрос нажатием кнопки на панели инструментов?

    Если да, то совершенно не вижу смысла в этом. Достаточно после выделения слова, удерживая shift нажать клавишу управления со стрелочкой влево.

  2. 10.10.2008 в 14:30 | #2

    pkorney, это лишние движения: выдели слово - нажми клавиши - потом примени макрос. А смысл в том, что мне не нужно простое выделение - я применяю макрос для того, чтобы оформить выделенное слово полужирным начертанием (стиль). А поскольку я всегда выделяю слова двойным щелчком, то происходит и захват при этом лишнего символа справа. Поэтому этот простой макрос и сжимает выдыеленный диапазон и сразу же применяет нужное мне форматирование.

    Хотя можно было бы сделать еще проще: если у вас есть свой созданный стиль для полужирного начертания (не абзаца, а знаков), то достаточно встать курсором мыши на нужное слово и применить стиль. И не нужно будет ни макросов, ни выделений.

  3. Сергей
    14.10.2008 в 09:45 | #3

    Если нужно изменить начертание одного слова, то виделение его с помощью двойного щелчка - это уже лишнее движение :). Достаточно поместить курсор внутрь слова и применить требуемое оформление (СTRL+B или кнопка). Формат пробелов при этом не изменяется.

  4. 14.10.2008 в 13:26 | #4

    Да, Сергей, в комменте выше я об этом тоже указал, но в данном случае я привел лишь свой опыт и свое решение. Им и пользуюсь.

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

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

^ Наверх