+ Ответить в теме
Показано с 1 по 6 из 6

Тема: Макрос: Выделение жирным каждое третье слово в тексте

Древовидный режим

  1. #1
    coder Aslin is on a distinguished road
    Регистрация
    22.01.2018
    Возраст
    20
    Сообщений
    15
    Вес репутации
    2

    По умолчанию Макрос: Выделение жирным каждое третье слово в тексте

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

  2. #2
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    77
    Сообщений
    831
    Вес репутации
    17

    По умолчанию Re: Макрос: Выделение жирным каждое третье слово в тексте

    Код :
    1. Sub Test()
    2.     With ActiveDocument.Words
    3.          Dim iCount&
    4.          For iCount = 1 To .Count Step 3
    5.              .Item(iCount).Font.Bold = True
    6.          Next
    7.     End With
    8. End Sub

    Код :
    1. Sub Test2()
    2.     Dim objWord As Word.Range, iCount&
    3.     For Each objWord In ActiveDocument.Words
    4.         If iCount Mod 3 = 0 Then
    5.            objWord.Font.Bold = True
    6.         End If
    7.         iCount = iCount + 1
    8.     Next
    9. End Sub

    P.S. Рекомендую ознакомиться с тем, что Word считает Word(словом), ибо запятая это тоже слово если Вы с этим не согласны, то можете добавить доп.проверку

  3. #3
    coder Aslin is on a distinguished road
    Регистрация
    22.01.2018
    Возраст
    20
    Сообщений
    15
    Вес репутации
    2

    По умолчанию Re: Макрос: Выделение жирным каждое третье слово в тексте

    Здравствуйте, данные макросы выделяют первые слова в тройке, а надо наоборот чтобы выделял третье слово, а не первое

  4. #4
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    77
    Сообщений
    831
    Вес репутации
    17

    По умолчанию Re: Макрос: Выделение жирным каждое третье слово в тексте

    В чём проблема? Неужели нельзя взять первый вариант и начать цикл не с 1, а с 3

  5. #5
    coder Aslin is on a distinguished road
    Регистрация
    22.01.2018
    Возраст
    20
    Сообщений
    15
    Вес репутации
    2

    По умолчанию Re: Макрос: Выделение жирным каждое третье слово в тексте

    Спасибо, разобралась. Еще один вопрос какая функция в макросе добавляет исключение? Чтобы макрос не считал за слово знаки пунктуации?

  6. #6
    system architect pashulka will become famous soon enough pashulka will become famous soon enough
    Регистрация
    24.11.2004
    Возраст
    77
    Сообщений
    831
    Вес репутации
    17

    По умолчанию Re: Макрос: Выделение жирным каждое третье слово в тексте

    Можете использовать что-то вроде этого :

    Код :
    1. Sub Test3()
    2.     Dim objWord As Word.Range, iCount&: iCount = 1
    3.    
    4.     Const chars = "*[.,;:!?(){}" & vbCr & "]*"
    5.    
    6.     For Each objWord In ActiveDocument.Words
    7.         If Not objWord.Text Like chars Then
    8.            If iCount Mod 3 = 0 Then objWord.Font.Bold = True
    9.            iCount = iCount + 1
    10.         End If
    11.     Next
    12. End Sub

    Здесь перечислены не все символы, которые Word воспринимает как слово. Впрочем, можно поступить и проще, считать словом то, что содержит минимум 2 символа. Это позволит обойтись без перечисления ненужных символов, правда такой подход отсечёт и с а у я

+ Ответить в теме

Похожие темы

  1. В строке слова разделены пробелами. Удалить каждое нечётное слово. (Pascal)
    1) В строке слова разделены пробелами. Удалить каждое нечётное слово. Напечатать полученную строку. 2)Дана последовательность слов. Напечатать те...
    от Crime в разделе задачи на Паскале и Delphi
  2. Как добавить слово в Словарь (Word)
    Вопрос в теме.
    от Busine2009 в разделе MS Office и VB(A).
  3. Как в TextBox выделять жирным или другим цветом кусок текста
    Как в TextBox выделять жирным или другим цветом кусок текста
    от namomelkor в разделе MS Office и VB(A).
  4. Выделение некоторых слов в тексте в ячейке Exel
    Всем привет. Кто подскажет. Следующая ситуация. В ячейках в Exel есть некоторый текст и в них есть повторяющие слова (характерные), в...
    от kostero в разделе MS Office и VB(A).
  5. Как сделать текст жирным?
    Кто-нибудь знает, можно ли сделать текст окна жирным с помощью функции Win API SetWindowText? Если нет, то подскажите как? (нужна функция WinAPI)
    от Redcat в разделе Win API, Shell..

Ваши права

  • Вы не можете создавать новые темы
  • Вы не можете отвечать в темах
  • Вы не можете прикреплять вложения
  • Вы не можете редактировать свои сообщения