3

我需要一个脚本,它遍历一个 word 文档,并将标题样式或图像之后的段落样式更改为自定义样式,而无需首行缩进。

如何循环浏览word文档中的段落/标题/项目?我如何获得风格?之后如何设置样式?

目标很简单:我希望段落的第一行缩进,但如果段落跟随标题行或图像则不缩进。而且由于这是一个很大的文档,而且我经常收到这些文档,因此我想要某种自动化,而不是尝试手动执行此操作。
所以我想编写一个脚本,它遍历段落并将样式从“段落”更改为“没有缩进的段落”,当它位于标题样式或图像之后。

4

1 回答 1

3

这是一些基本代码,可帮助您从这里开始。不幸的是,该Paragraph.Style参数不区分文本和图像,但您可以检查Paragraph.Range对象是否有任何InlineShapes,它们是图像。

Sub indentParas()
    Dim doc As Document
    Set doc = ActiveDocument
    Dim para As Word.Paragraph
    Dim i As Boolean
    i = False
    For Each para In doc.Paragraphs

        If i = False Then
            para.IndentCharWidth 4
        End If

        If para.Range.InlineShapes.Count > 0 Then
            i = True
        ElseIf Left(para.Style, 7) = "Heading" Then
            i = True
        Else
            i = False
        End If
    Next
End Sub

注意:这是在 Word 2010 中测试的。

于 2012-12-01T23:30:37.513 回答