我想遍历word文档中的每个页面,检查该页面是否包含图像,并对该页面执行某些操作(设置页边距并插入中断)。
For Each Page in Document.Pages
If Page.ContainsImage Then
Page.TopMargin = 0
DoOtherStuff
End If
Next
答案 0 :(得分:4)
Document
有一个代表所有形状的Shapes
集合。每个Shape都有一个Anchor
,我们可以使用它来获取形状页面的TopMargin
和其他属性:
Sub JiggleAllShapes()
Dim shp As Shape
For Each shp In ActiveDocument.Shapes
shp.Anchor.Paragraphs(1).Range.PageSetup.TopMargin = 0
Next shp
End Sub
我们可以从Anchor
获取页码:
shp.Anchor.Information(wdActiveEndPageNumber)
有一个Pages
集合,但它没有那么有用的IMO:
Sub WhatAboutPages()
Dim pge As Page
For Each pge In ActiveDocument.ActiveWindow.Panes(1).Pages
'Debug.Print pge.NothingUsefulHere
Next pge
End Sub
使用此方法,您必须深入研究Rectangles
集合并使用RectangleType
尝试确定当前Rectangle
是否为图像。