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

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

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

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

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

  2. По умолчанию

     
    Хотите избавиться от рекламы? Зарегистрируйтесь
  3. #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(словом), ибо запятая это тоже слово если Вы с этим не согласны, то можете добавить доп.проверку

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

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

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

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

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

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

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

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

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

  7. #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..

Ваши права

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