ExcelVBAで四角の図形を作成する方法

Excelでは四角や三角などの図形を作成することができます。

通常はマウス操作で作成することが多いと思いますが、この記事では、ExcelVBAで四角の図形を作成する方法を紹介します。

0. この記事のまとめ

アクティブシートに図形の四角を作成するには、ActiveSheet.Shapes.AddShapeメソッドを使用します。

ActiveSheet.Shapes.AddShape(msoShapeRectangle, left, top, width, height).Select
引数 意味 データ型
msoShapeRectangle 図形の四角を表します。 MsoAutoShapeType型
left 図形描画の左上のX座標です。 Single型
top 図形描画の左上のY座標です。 Single型
width 図形の幅です Single型
height 図形の高さです Single型

末尾の.Selectは、作成後の図形を選択するというメソッドです。

1. AddShape メソッド

ShapesオブジェクトのAddShapeメソッドを使用して、図形を作成します。

https://docs.microsoft.com/en-us/office/vba/api/Excel.Shapes.AddShape

2. 四角の図形を作成する

図形の左上X座標=30, 図形の左上Y座標=60, 幅=90、高さ=120の四角を作成するには、以下のようになります。

ActiveSheet.Shapes.AddShape(msoShapeRectangle, 30, 60, 90, 120).Select

3. セル選択範囲に一致する四角の図形を作成する

セル選択範囲のX座標、Y座標、幅、高さは、Selectionオブジェクトから取得します。

Dim top As Integer
Dim left As Integer
Dim height As Integer
Dim width As Integer

top = Selection.top
left = Selection.left
height = Selection.height
width = Selection.width

ActiveSheet.Shapes.AddShape(msoShapeRectangle, left, top, width, height).Select

このようにすることで、セル位置と一致するような図形を作成できます。

カテゴリー: VBA

コメントを残す

メールアドレスが公開されることはありません。