Home » ワードマクロ・Word VBAの使い方 » Shape・図形 » Word VBAで図形のサイズを取得する

Word VBAで図形のサイズを取得する

動作検証バージョン:64bit Windows 10 Pro + 32bit Word(バージョン1912 ビルド12325.20344 Microsoft Store)

「vba word 図形のサイズを取得」
という検索キーワードで、このサイト「インストラクターのネタ帳」へアクセスがありました。

図形のサイズを取得するSubプロシージャ

アクティブな文書に、浮動オブジェクトとしての図形を作成しておいてから、以下のSubプロシージャを実行してください。
Sub 図形のサイズを取得する()
 Dim shp As Shape
 Set shp = ActiveDocument.Shapes.Item(1)
 MsgBox _
   "Width : " & shp.Width & vbCrLf & _
   "Height : " & shp.Height
End Sub

Shapeオブジェクトの持つプロパティはPowerPoint VBAと似ている

上記のSubプロシージャは、1月24日に発売となった拙著『いちばんやさしいPowerPoint VBAの教本』の、Lesson 34「Shapeの位置と大きさを表すプロパティについて学習しましょう」で作成するSubプロシージャとよく似ています。

拙著はPowerPoint VBAの入門書で、アクティブなスライドの先頭スライドの1つ目の図形を取得するために、図形を取得するコード「.Shapes.Item(1)」の前が「ActivePresentation.Slides(1)」となっているのに対し、上記のSubプロシージャでは「.Shapes.Item(1)」の前が「ActiveDocument」となっています。

「ActiveDocument.Shapes.Item(1)」で、アクティブ文書の1つ目の図形を取得できます。

拙著で何度も行っているように、ローカルウィンドウを使ってオブジェクト変数shpを確認してみてください。

また、拙著Lesson 32「ShapesからShapeを取得するコードを理解しましょう」で解説しているのと同様に、Word VBAのShapesコレクションのItemメソッドも、既定メンバーですから、

「ActiveDocument.Shapes.Item(1)」は「ActiveDocument.Shapes(1)」と書くこともできます。

Word VBAのShapesコレクション・Shapeオブジェクトは、PowerPoint VBAのShapesコレクション・Shapeオブジェクトと似た部分の多いオブジェクトですから、Word VBAでの図形操作を理解したい方にとっても、拙著のChapter 5~6はお役に立てるのではないかと考えています。

最終更新日時:2020-01-31 05:54

[スポンサードリンク]

Home » ワードマクロ・Word VBAの使い方 » Shape・図形 » Word VBAで図形のサイズを取得する

「Shape・図形」の記事一覧

検索


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

.