我有一个 docx 文档,文档的不同部分有许多直线形状。我的任务是删除所有这些直线形状。我可以手动完成,但文档长达 160 页,每页至少有 3 个直线形状,因此我正在寻找一种方法来自动删除所有这些。
有没有什么办法可以用正则表达式或者 word 中的其他选项来实现呢?
答案1
这需要类似于以下代码(未经测试)的 VBA 代码:
Public Sub DeleteLines()
Dim shape As InlineShape
For Each shape In ActiveDocument.InlineShapes
If shape.Type = wdInlineShapeHorizontalLine Then
shape.Delete
End If
Next shape
End Sub
这将删除所有水平线 ( wdInlineShapeHorizontalLine
)。要删除其他类型的线形,请参阅
WdInlineShapeType 枚举。