3

単語ドキュメントを反復処理し、見出しスタイルまたは画像に続く段落のスタイルを最初の行のインデントなしのカスタムスタイルに変更するスクリプトが必要です。

ワードドキュメントの段落/ヘッダー/アイテムをループするにはどうすればよいですか?そして、どうすればスタイルを取得できますか?その後、どのようにスタイルを設定しますか?

目標は単純です。段落の最初の行をインデントしたいのですが、段落がヘッダー行または画像の後に続く場合はインデントしません。そして、これは大きなドキュメントであり、私はそれらを頻繁に入手するので、ある種の自動化が必要であり、これを手動で実行しようとはしません。
そこで、段落を繰り返し処理し、ヘッダーのスタイルまたは画像の後にスタイルを「段落」から「インデントなしの段落」に変更するスクリプトを作成したいと思います。

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

注:これはWord2010でテストされています。

于 2012-12-01T23:30:37.513 に答える