vba - Word 2003 - 如何使用宏更改样式?

标签 vba ms-word

是否可以创建 Word 2003 宏来更改文档某些部分的字体样式?

例如,假设我有一份文档,其中大部分文本为粗体斜体和 12 号字体。我想用带下划线的 14 点字体替换所有具有这些特征的文本。

我已经在 Google、StackOverflow 和 Microsoft's website 上进行了一些搜索但我一直无法找到任何讨论这是否可能的内容。

有什么帮助吗?

最佳答案

是的,您需要使用 .Find 对象及其子 .Replacement 内容。您可以在 Selection(有限运行)、Range(段落、故事等)或整个文档上执行此操作。下面的示例适用于整个文档 (ActiveDocument.Content)。

Sub FindReplaceStyle()
    With ActiveDocument.Content.Find
        .ClearFormatting

        With .Font
            .Bold = True
            .Size = 14
            .Italic = True
        End With

        .Format = True

        With .Replacement
            .ClearFormatting
            With .Font
                .Bold = False
                .Italic = False
                .Underline = wdUnderlineSingle
                .Size = 12
            End With
        End With

        .Execute Forward:=True, Replace:=wdReplaceAll, _
            FindText:="", ReplaceWith:=""
    End With
End Sub

关于vba - Word 2003 - 如何使用宏更改样式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2421500/

相关文章:

excel - 是否立即声明了电子表格中所有模块中的所有全局变量?

arrays - VBA 中二维数组中的一个数组元素的具体引用

vba - 如何通过MS Word宏查找多个段落属性

r - Sweave 用户如何与 Word 用户协作?

ms-access - 如何仅关闭由 OLEFormat.Activate 打开的 Excel 实例

xmlnode 代码不起作用 - Access vba

vba - 尝试关闭与 Blackbaud 的 Raiser's Edge API 的连接时 MS Access 崩溃

vba - 释放按键时触发事件 VBA

javascript - 打印时需要隐藏未选中的框

java - 无法使用 Apache POI 读取 .doc 文件的整个单元格