如何根据开头字符带有单词宏的标题来更改标题样式?

时间:2018-07-03 14:55:18

标签: vba ms-word word-vba

所以我不知道如何使用VBA进行编程,但是我正在慢慢学习。我的工作要我用字格式化目录导出格式,以便可以在目录中找到内容以便于下周搜索。有超过1,500页的格式需要完成,而手工尝试的方式太多了。幸运的是,使用tree命令可以轻松地查看级别和其他内容。

有没有办法记录一个宏来自动为我执行此操作?基本上,我需要搜索整个文档和

如果text =“ ---”,则[更改为标题样式4]

这是我浏览互联网后得到的东西:

Sub headingStylizer()
'
' headingStylizer Macro
' Change Headings from a tree dos export
'
   If Text = "            ---" Then Selection.Style = 
ActiveDocument.Styles("Heading 4")
End Sub

在此先感谢您提供的任何帮助!

1 个答案:

答案 0 :(得分:0)

如果我对您的理解正确,那么应该通过全局查找和替换来实现类似的目的

Sub FixTextStyle()    
    Dim head4 As Style

    Set head4 = ActiveDocument.Styles("Heading 4")

    With ActiveDocument.Content.Find
        .ClearFormatting
        With .Replacement
            .ClearFormatting
            .Style = head4
        End With
        .Execute FindText:="            ---", ReplaceWith:="            ---", _
            Format:=True, Replace:=wdReplaceAll
    End With
End Sub