Excelのシート上に、指定したサイズや色で図形を描画する基本コードを紹介します。手作業で図形を並べるのは大変ですが、VBAなら座標を指定して一瞬で配置できます。
コードの動作
- 実行すると、シート上の特定の場所に四角形を作成します。
- 作成した図形の中にテキストを書き込みます。
- 塗りつぶしの色と枠線の色をコードから設定します。
図形を作成するVBAコード
VBA
Sub CreateBasicShape()
Dim myShape As Shape
' 1. 四角形を作成 (左位置, 上位置, 幅, 高さ)
Set myShape = ActiveSheet.Shapes.AddShape(msoShapeRectangle, 100, 50, 150, 60)
' 2. 図形にテキストを入れる
With myShape.TextFrame2.TextRange
.Text = "サンプル図形"
.Font.Size = 14
.Font.Fill.ForeColor.RGB = RGB(255, 255, 255) ' 文字色を白に
End With
' 3. 図形の見た目を整える
With myShape.Fill
.ForeColor.RGB = RGB(0, 112, 192) ' 塗りつぶしの色(青)
.Transparency = 0 ' 透明度
End With
With myShape.Line
.ForeColor.RGB = RGB(0, 0, 0) ' 枠線の色(黒)
.Weight = 2 ' 枠線の太さ
End With
MsgBox "図形を作成しました。"
End Sub
コードのポイント解説
Shapes.AddShape の後にある4つの数字は、左からの位置、上からの位置、横幅、縦幅の順になっています。これをセルの位置(LeftプロパティやTopプロパティ)と連動させると、特定のセルにぴったり重ねて図形を配置することも可能です。


コメント