2

画像を含む Word 2010 ドキュメントを取得します。何らかの理由で、これらの画像は 133% に拡大されています。

現在、ドキュメント内のすべての画像を繰り返し処理し、それらを 100% に拡大する方法を探しています。このスクリプトを見つけましたが、機能しません (単語マクロについての手がかりがなかったので、理由がわかりません):

Sub AllGraphicsTo100() 

  Dim ILS As Word.InlineShape 
  Dim SHP As Word.Shape 

  For Each ILS In ActiveDocument.InlineShapes 
    If ILS.Type = wdInlineShapePicture Then 
        ILS.ScaleHeight = 100 
        ILS.ScaleWidth = 100 
    End If 
  Next ILS 

  For Each SHP In ActiveDocument.Shapes 
    If SHP.Type = msoPicture Then 
        SHP.ScaleHeight 1#, True 
        SHP.ScaleWidth 1, True 
    End If 
  Next SHP 

End Sub

さらに、画像が列よりも広い場合は、100% ではなく、列の幅に合わせて拡大縮小したいと思います。

4

1 に答える 1

4

画像が埋め込まれているのではなく、リンクされている可能性があります。次のように、リンクされた画像を含めるようにマクロを変更できます。

    Sub AllGraphicsTo100()

      Dim ILS As Word.InlineShape
      Dim SHP As Word.Shape

      For Each ILS In ActiveDocument.InlineShapes
        If ILS.Type = wdInlineShapePicture Or ILS.Type = wdInlineShapeLinkedPicture Then
            ILS.ScaleHeight = 100
            ILS.ScaleWidth = 100
        End If
      Next ILS

      For Each SHP In ActiveDocument.Shapes
        If SHP.Type = msoPicture Or SHP.Type = msoLinkedPicture Then
            SHP.ScaleHeight 1#, True
            SHP.ScaleWidth 1, True
        End If
      Next SHP

    End Sub
于 2012-09-06T21:57:28.627 に答える