以下のコードをxlam形式で保存し、アドインとして読み込んでください。
Sub 枠線だけのオートシェイプを作る()
Dim shapeType As String
Dim shapeW As Integer
Dim shapeH As Integer
Dim shapeRow As Integer 'シェイプを作る行
Dim shapeCol As Integer 'シェイプを作る列
'=== シェイプの形と大きさを決めて下さい ここから ===
shapeType = msoShapeRoundedRectangle 'シェイプの形
'四角なら msoShapeRectangle
'角丸四角形なら msoShapeRoundedRectangle
'円なら msoShapeOval
shapeW = 200 'シェイプの大きさ(横幅)
shapeH = 50 'シェイプの大きさ(高さ)
shapeRow = 5 'シェイプを作る行
shapeCol = 5 'シェイプを作る列
'=== シェイプの形と大きさを決めて下さい ここまで ===
Dim myShape As Shape
'オートシェイプを作成する
Set myShape = ActiveSheet.Shapes.AddShape(Type:=shapeType, _
Left:=shapeCol, Top:=shapeRow, Width:=shapeW, Height:=shapeH)
'シェイプを選択
myShape.Select
'塗りつぶしの設定
With Selection.ShapeRange.Fill
.Visible = msoFalse '塗りつぶしの有無
'.ForeColor.RGB = RGB(255, 0, 0) '塗りつぶしの色
'.Transparency = 0 '塗りつぶしの透明度
End With
'線の設定
With Selection.ShapeRange.Line
.Visible = msoTrue '線の有無)
.Style = msoLineSingle '線の種類(実線)
.ForeColor.RGB = RGB(255, 0, 0) '線の色
.Transparency = 0 '線の透明度
.Weight = 6 '線の太さ
End With
End Sub
コメント