Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Microsoft Office и VBA программирование > Microsoft Office Word
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 02.05.2018, 12:17   #1
xanaman
Новичок
Джуниор
 
Регистрация: 02.05.2018
Сообщений: 1
По умолчанию Макрос по автовставке неразрывного пробела

Добрый день, уважаемые форумчане!
Имеется макрос по переносу предлогов, но нужно сделать так чтоб макрос срабатывал только на выделенную мной курсором область. Помогите откорректировать:

Код:
Sub predlogi()
Dim s$, n&
  Selection.HomeKey Unit:=wdStory
  Do
    Selection.EndKey Unit:=wdLine
    If Selection.End + 1 >= ActiveDocument.Range.End Then Exit Do
    Selection.MoveLeft Unit:=wdWord, Count:=1, Extend:=wdExtend
    s = Selection.Text
    If s = vbCr Then  'пустой абзац, выделение сместилось на строку вверх!
      Selection.MoveDown Unit:=wdLine, Count:=1
    ElseIf LCase$(Right$(s, 2)) Like "[a-zа-яё] " And (Len(s) = 2 Or Len(s) = 3) Then
      Selection.EndKey Unit:=wdLine
      Selection.MoveLeft Unit:=wdCharacter, Count:=1, Extend:=wdExtend
      Selection.TypeText Text:=Chr(160) 'неразрывный пробел; происходит переход на сл. строку
      n = n + 1
      Selection.MoveUp Unit:=wdLine, Count:=1
    End If
    Selection.MoveDown Unit:=wdLine, Count:=1
  Loop
MsgBox "Выполнено замен: " & n, vbInformation
End Sub


________
Код нужно оформлять по правилам:
тегом [CODE]..[/СODE]
(это кнопочка на панели форматирования с решёточкой #)
Не забывайте об этом!

Модератор.

Последний раз редактировалось Serge_Bliznykov; 02.05.2018 в 21:46.
xanaman вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц

Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Использование \b пробела Logannn Общие вопросы C/C++ 4 30.10.2012 23:37
Не читает после пробела ubun PHP 1 15.01.2012 21:39
замена пробела запятой Pljus1 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 1 15.04.2010 22:09
Вставка пробела Лёшка228 Общие вопросы Delphi 7 21.06.2009 14:26
Ликвидирование пробела в Memo Sanek777 Общие вопросы Delphi 2 08.10.2008 15:51