我正在尝试编写一个脚本,该脚本将运行一个word文档并将所有以某种字体编写的行输出到文本文件。
所以,如果我有文件:
“这是该文件的第一行。 这是文档的第二行。 这是文档的第三行。“
并且说法线是Times New Roman,粗体是Arial,斜体是Sans Serif。
然后,理想情况下,我可以解析Arial中所有行的文档,文本文件输出将包含以下行:
这是该文件的第二行。
有关如何从脚本执行此操作的任何想法?我正在考虑首先将doc转换为xml,但我不认为这在脚本中是可行的。
答案 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对象即可查看可用的内容。