Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Shapesコレクション・Shapeオブジェクト » 最初に選択した図形に高さ・幅を揃えるPowerPointマクロ

最初に選択した図形に高さ・幅を揃えるPowerPointマクロ

動作検証バージョン:Windows版PowerPoint(バージョン1901 ビルド11231.20130)

PowerPointでたくさんの図形を使って図版を作成するときに、図形のサイズを揃える作業が頻発するのは、私だけではないはずです。

そのようなときに使えるマクロを作ってみましたので、ご紹介しておきます。
複数図形の高さを同じにするPowerPointマクロです。

[スポンサードリンク]

高さをどう指定するかですが、最初に選択した図形に揃えるという仕様にしました。

最初に選択した図形に高さを揃えるサンプルマクロ

複数の図形が選択されているときに、以下のSubプロシージャを実行すると、最初に選択した図形と同じ高さになります。

Sub 最初に選択した図形に高さを揃える()
 With ActiveWindow.Selection
  If .Type <> ppSelectionShapes Then Exit Sub

  With .ShapeRange
   .Height = .Item(1).Height
  End With ' .ShapeRange
 End With ' ActiveWindow.Selection
End Sub

サンプルマクロで行っている処理

最初に選択した図形に高さを揃えているのは、
  With ActiveWindow.Selection
   With .ShapeRange
    .Height = .Item(1).Height
の部分です。

With文を使わない書き方なら、
  ActiveWindow.Selection.ShapeRange.Height = _
  ActiveWindow.Selection.ShapeRange.Item(1).Height
です。

ShapeRangeはコレクションですが、個々の図形を表すShapeオブジェクトと同じプロパティをかなり持っていて、高さを取得・設定するHeightプロパティも用意されているため、このような書き方ができます。

図形が選択されていないときに実行時エラーが発生しないように、この主たる処理の前に、
  With ActiveWindow.Selection
   If .Type <> ppSelectionShapes Then Exit Sub
を入れています。

幅を揃えたい場合はWidth

幅を揃えたい場合は、上述のSubプロシージャの、
   .Height = .Item(1).Height
の部分を
   .Width = .Item(1).Width
としてください。

最終更新日時:2019-02-06 15:57

[スポンサードリンク]

Home » パワーポイントマクロ・PowerPoint VBAの使い方 » Shapesコレクション・Shapeオブジェクト » 最初に選択した図形に高さ・幅を揃えるPowerPointマクロ

「Shapesコレクション・Shapeオブジェクト」の記事一覧

検索


Copyright © インストラクターのネタ帳 All Rights Reserved.

.