我想遍历Word文档中的每个页面,检查该页面是否包含图像,并对该页面执行某些操作(设置页面边距并插入中断) 。在Word中遍历页面并查找包含图像的页面
For Each Page in Document.Pages
If Page.ContainsImage Then
Page.TopMargin = 0
DoOtherStuff
End If
Next
我想遍历Word文档中的每个页面,检查该页面是否包含图像,并对该页面执行某些操作(设置页面边距并插入中断) 。在Word中遍历页面并查找包含图像的页面
For Each Page in Document.Pages
If Page.ContainsImage Then
Page.TopMargin = 0
DoOtherStuff
End If
Next
一个Document
有Shapes
集合代表所有的形状。每个形状具有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
是否为图像。
工作对我很好。 –
+1用于回答问题和所需问题。页面迭代对我来说非常合适。谢谢 – Praesagus
在Word文档中有一些图像类型 - 嵌入一个文本('InlineShapes')和第二个浮动('Shapes')。你在文档中拥有哪一个? –
我的文档中的大部分图像都是(形状)。 –