Замените прямое форматирование 'жирным шрифтом' на эквивалентный стиль символов vba - PullRequest
0 голосов
/ 05 ноября 2019

Я реализую макрос VBA, который заменит прямое форматирование 'жирным шрифтом' на эквивалентный стиль символов 'жирным шрифтом'. Ниже приведен мой код:

Public Sub DirectFormattingToBoldCharacterStyleBold()

Dim rDcm As Range
Dim rPrg As Paragraph
Dim rWrd As Range

'direct formatting bold (yes, no) found
If ActiveDocument.Range.Font.Bold = 9999999 Then
    'direct formatting bold (yes, no) in paragraph"
    For Each rPrg In ActiveDocument.Paragraphs
        For Each rWrd In rPrg.Range.Words
            If rWrd.Font.Bold <> rPrg.Style.Font.Bold Then
                rWrd.Select
                Selection.ClearParagraphDirectFormatting
                Selection.ClearCharacterDirectFormatting
                rWrd.Style = ActiveDocument.Styles("bold").NameLocal
            End If
        Next
   Next
End If

Set rDcm = Nothing
Set rPrg = Nothing
Set rWrd = Nothing

End Sub

Мой макрос меняет стиль применяемого символа на полужирный, но не удаляет прямой стиль «полужирный» (не заменяет, но дает оба формата).

Может кто-нибудь сообщить мне, что не так с моим макросом?

Заранее спасибо.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...