Home » エクセルマクロ・Excel VBAの使い方 » DrawingObjects » Rectangles.Addで四角形を挿入する

Rectangles.Addで四角形を挿入する

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

「excelvba rectangles() add()」
「Rectangles.Add VBA」
といった検索キーワードで、アクセスが時折あります。

詳細は不明ですが、RctanglesコレクションのAddメソッドを使ったコードについて調べていた方による検索です。

[スポンサードリンク]

ExcelでもShapes.AddShapeで四角形を挿入できる

レガシーなオブジェクトRectanglesではなく、Shapesコレクションに用意されているメソッドを使ったコードを、先にご紹介します。

ActiveSheet.Shapes.AddShape _
  Type:=msoShapeRectangle, _
  Top:=0, Left:=0, Width:=100, Height:=100

拙著『いちばんやさしいPowerPoint VBAの教本』のLesson 39「Shapesが持つAdd〇〇メソッドでShapeを挿入できます」で、PowerPoint VBAのShapes.AddShapeメソッドの引数TypeにmsoShapeRectangleを指定した、四角形を挿入するコードを解説しています。

Excel VBAの場合も同様で、上記のコードを実行すれば、アクティブシートA1セルの左上を起点に100×100の四角形が挿入されます。

拙著でご紹介しているPowerPoint VBAのコードとは、「.Shapes.AddShape」の前の部分が違うだけです。

Rectangles.Addで四角形を挿入する

Rectangles.Addメソッドを使う場合は以下のようなコードです。

ActiveSheet.Rectangles.Add _
  Top:=0, Left:=0, Width:=100, Height:=100

上記のコードで、先ほどのShapes.AddShapeメソッドを使った場合と同じ結果になります。

Shapes.AddShapeの場合、さまざまな形状の図形を挿入できるため、引数Typeでどのような形状なのかを指定しますが、Rectangles.Addの場合は四角形であることは決まっているので、Top・Left・Width・Heightだけを引数に指定します。

Rectanglesはオブジェクトブラウザーで非表示になっているレガシーなオブジェクトであり、基本的には先述のShapes.AddShapeメソッドを使うことをおすすめします。

最終更新日時:2020-03-31 09:56

[スポンサードリンク]

Home » エクセルマクロ・Excel VBAの使い方 » DrawingObjects » Rectangles.Addで四角形を挿入する

「DrawingObjects」の記事一覧

検索


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

.