7

我需要在 Word 文档中进行一些格式更改。为此,我需要选择文档中的所有图像。

有人可以为我提供一个宏/选项,以选择 Word 文档中的所有图像(我使用的是 MS Office 2007)。

4

1 回答 1

3

我不相信有一种简单的方法可以一次选择所有图像,除非它们都In Line with Text。如果是,那么您可以使用以下示例循环它们以进行格式更改:

Dim iShape As InlineShape

For Each iShape In ActiveDocument.InlineShapes
    With iShape
        .Width = InchesToPoints(2)
        .Height = InchesToPoints(1.5)
    End With
Next iShape

我不确定你是否要格式化图片或图片周围的一些文字,但你可以做任何一个(或两者)。

如果图像不是全部In Line with Text,那么您可能想要围绕以下内容构建一些东西,这会将您移至下一个图形:

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

如果我们确切地知道您要做什么,那将会有所帮助。

于 2012-12-15T01:24:09.177 回答