选择unbolded text&更改其颜色(所选段落的颜色) - MS Word VBA宏

时间:2017-03-08 14:28:48

标签: vba ms-word word-vba

  • 我想在MS Word 2010文档中选择一段文字。
  • 然后使用宏:选择unbolded text&将该文本的颜色更改为蓝色

注意:我不想对整个文档文本执行此操作,只是对我选择的段落/块文本执行此操作。

图片展示了我想做的事情:

pic

我尝试创建以下宏 - 但由于某种原因,它会使所有文本(粗体和非粗体)变为蓝色

cordova plugin add ionic-plugin-deeplinks --variable URL_SCHEME=myapp --variable DEEPLINK_SCHEME=http --variable DEEPLINK_HOST=myapp.com --variable ANDROID_PATH_PREFIX=/

更新: 我还希望排除'氰化作用中的子弹符号。 (如果可能的话)

例如: Example of the bullet symbols not being cyanized

1 个答案:

答案 0 :(得分:0)

您查看所选文字中的每个字符,如果它不是粗体,则将其着色:

Option Explicit

Sub CyanizeNonBoldInSelection()
    Dim oRange As range
    Dim oChar As range
    Dim oListFormat As ListFormat

    Application.UndoRecord.StartCustomRecord "CyanizeNonBoldInSelection"

    Set oRange = Selection.range

    For Each oChar In oRange.Characters

        If oChar.Bold = False Then

            oChar.Font.ColorIndex = wdTurquoise

            If oChar.ListParagraphs.Count > 0 Then
                Set oListFormat = oChar.ListParagraphs(1).range.ListFormat
                oListFormat.ListTemplate.ListLevels(oListFormat.ListLevelNumber).Font.ColorIndex = wdTurquoise
            End If

        End If
    Next oChar

    Application.UndoRecord.EndCustomRecord

End Sub