ドキュメント内のグラフィックを一定の割合で定期的に拡大縮小する必要がある場合があります。メニューを使用してスケーリングを行うのは面倒な場合があるため、ツールバーボタンまたはショートカットキーに割り当てることができるマクロを使用してスケーリングを行うことをお勧めします。次のマクロは、スケーリングの実行を非常にうまく処理します。

Sub PictSize()

Dim PercentSize As Integer

PercentSize = InputBox("Enter percent of full size", _       "Resize Picture", 75)



If Selection.InlineShapes.Count > 0 Then         Selection.InlineShapes(1).ScaleHeight = PercentSize         Selection.InlineShapes(1).ScaleWidth = PercentSize     Else         Selection.ShapeRange.ScaleHeight Factor:=(PercentSize / 100), _           RelativeToOriginalSize:=msoCTrue         Selection.ShapeRange.ScaleWidth Factor:=(PercentSize / 100), _           RelativeToOriginalSize:=msoCTrue     End If End Sub

マクロは最初に、選択した画像を拡大縮小するパーセンテージを要求し、デフォルトとして75(75%)を提供します。パーセンテージを指定すると、マクロは、選択したグラフィックがインライングラフィックかフローティンググラフィックかを確認します。これを行う理由は、オブジェクトの仕様がそれぞれの場合で異なり、スケーリングの指定方法も異なるためです。インラインオブジェクトはInlineShapesコレクションに属しますが、フローティングオブジェクトはShapeRangeオブジェクトを使用して設定されます。

ドキュメント内のすべてのグラフィックのサイズを同じ割合で変更する場合は、上記のマクロを変更するだけで、各インライングラフィック、次に各フローティンググラフィックの順に移動します。

Sub AllPictSize()

Dim PercentSize As Integer     Dim oIshp As InlineShape     Dim oshp As Shape

PercentSize = InputBox("Enter percent of full size", _       "Resize Picture", 75)



For Each oIshp In ActiveDocument.InlineShapes         With oIshp             .ScaleHeight = PercentSize             .ScaleWidth = PercentSize         End With     Next oIshp

For Each oshp In ActiveDocument.Shapes         With oshp             .ScaleHeight Factor:=(PercentSize / 100), _               RelativeToOriginalSize:=msoCTrue             .ScaleWidth Factor:=(PercentSize / 100), _               RelativeToOriginalSize:=msoCTrue         End With     Next oshp End Sub

注:

このページ(または_WordTips_サイトの他のページ)で説明されているマクロの使用方法を知りたい場合は、役立つ情報を含む特別なページを用意しました。

_WordTips_は、費用効果の高いMicrosoftWordトレーニングのソースです。

(Microsoft Wordは、世界で最も人気のあるワードプロセッシングソフトウェアです。)このヒント(7694)は、Microsoft Word 97、2000、2002、および2003に適用されます。Wordのリボンインターフェイス(Word 2007)用のこのヒントのバージョンを見つけることができます。以降)ここ: