我需要在word文档中进行一些格式更改。我需要选择文档中的所有图像。
有人可以为我提供一个宏/选项,只是为了选择word文档中的所有图像(我使用的是MS Office 2007)。
答案 0 :(得分:3)
我不相信有一种简单的方法可以同时选择所有图像,除非它们都是符合文本。如果是,则可以使用以下示例循环它们以进行格式更改:
Dim iShape As InlineShape
For Each iShape In ActiveDocument.InlineShapes
With iShape
.Width = InchesToPoints(2)
.Height = InchesToPoints(1.5)
End With
Next iShape
我不确定您是否要格式化图片或图片周围的文字,但您可以(或两者都有)。
如果图像并非全部与文字一致,那么您可能想要围绕以下内容构建一些内容,这会将您移动到下一个图形:
Selection.GoTo What:=wdGoToGraphic, Which:=wdGoToNext, Count:=1, Name:=""
与此代码的区别在于它将光标放在下一个图形的前面,但实际上并没有选择它,因此您需要添加它。如果你想遍历整个文档,这里有一些代码可以做到这一点。它会找到每个图形并在它之前输入单词“Test”......直到它找不到更多的图形。
Selection.HomeKey unit:=wdStory
Do Until ActiveDocument.Bookmarks("\Sel") = ActiveDocument.Bookmarks("\EndOfDoc")
Selection.GoTo What:=wdGoToGraphic, Which:=wdGoToNext, Count:=1, Name:=""
Selection.MoveRight unit:=wdWord, Count:=1, Extend:=True
If Selection.Type = 7 Then
Selection.Collapse wdCollapseStart
Selection.TypeText Text:="TEST"
Selection.MoveRight unit:=wdWord, Count:=1, Extend:=False
Else
Exit Sub
End If
Loop
如果我们确切地知道你想要做什么,那将会有所帮助。