开发者

Parse a Word Document By Font?

开发者 https://www.devze.com 2023-03-15 14:56 出处:网络
I\'m currently trying to write a script which would run through a word document and output to a text file all the lines that are written in a certain font.

I'm currently trying to write a script which would run through a word document and output to a text file all the lines that are written in a certain font.

So if I had the document:

"This is the first line of the document. This is the second line of the document. This is the third line of the document."

And say normal lines are Times New Roman, bold is Arial, and italics is Sans Serif.

Then, ideally, I could parse the document for all lines in Arial and the text file output would have the line:

This is the second line of the document.

Any idea on how to do this from a script? I was thinking about first conve开发者_高级运维rting the doc into xml, but I do not think this is possible within a script.


You'll want to use the FIND object, and the FONT property of the FIND object.

So, something like this:

Public Sub FindTest()
    Dim r As Range
    Set r = ActiveDocument.Content
    With r.Find
        .ClearFormatting
        .Style = "SomeStyleName"
        Do While .Execute(Forward:=True, Format:=True) = True
            '---- we found a range
            Dim duperange As Range
            Set duperange = r.Duplicate
            Debug.Print r.Text
        Loop
    End With
End Sub

Note that where I've specified Style, you could specify font formatting via the FIND.FONT object, or various other formatting options. Just browse around the FIND object to see what's available.

0

精彩评论

暂无评论...
验证码 换一张
取 消