按字体解析Word文档?

时间:2011-06-27 20:39:00

标签: parsing ms-word text-parsing

我正在尝试编写一个脚本,该脚本将运行一个word文档并将所有以某种字体编写的行输出到文本文件。

所以,如果我有文件:

“这是该文件的第一行。 这是文档的第二行。 这是文档的第三行。

并且说法线是Times New Roman,粗体是Arial,斜体是Sans Serif。

然后,理想情况下,我可以解析Arial中所有行的文档,文本文件输出将包含以下行:

这是该文件的第二行。

有关如何从脚本执行此操作的任何想法?我正在考虑首先将doc转换为xml,但我不认为这在脚本中是可行的。

1 个答案:

答案 0 :(得分:1)

您将需要使用FIND对象和FIND对象的FONT属性。

所以,像这样:

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

请注意,在我指定Style的位置,您可以通过FIND.FONT对象或其他各种格式选项指定字体格式。只需浏览FIND对象即可查看可用的内容。