Excel VBA 図形(オートシェイプ)の枠線の色や種類と太さを変更する方法

図形作成/操作

VBAで図形(オートシェイプ)の枠線の色や種類、太さを変更する方法をご説明します。

塗りつぶしの色に合わせるなど、デフォルトの色のままでは視覚的にも微妙なので、位置の指定やサイズの変更に併せて、ぜひ枠線の色は変更方法を覚えてみてください。

枠線の色、太さ、線の種類を順に説明します。

その他の図形の操作については次の記事をご覧ください。

1.図形の枠線を操作する

枠線の色

図形の枠線の色を変更する方法です。

Shapeオブジェクトの「Lineプロパティ」で取得できる、「LineFormatオブジェクト」を操作します。

Line.ForeColor.RGB」で色を指定します。

次のように記述します。

ActiveSheet.Shapes(1).Line.ForeColor.RGB = RGB(255, 0, 0)

「RGB(255, 0, 0)」は赤色です。

RGBとは「」「」「」の組み合わせで色を設定する関数です。

それぞれ0~255の数値で指定します。

枠線の太さ

図形の枠線の太さを変更する方法です。

枠線の太さも色と同様に「Lineプロパティ」で取得できる、「LineFormatオブジェクト」を操作します。

Weight」で太さのポイントを指定します。

次のように記述します。

ActiveSheet.Shapes(1).Line.Weight = 6

枠線の種類

枠線の種類は実線や点線、1重線や2重線などを指定する方法です。

こちらも同様に枠線の太さも色と同様に「Lineプロパティ」で取得できる、「LineFormatオブジェクト」を操作します。

Style」で1重線や2重線を指定し、「DashStyle」で実線や点線を指定します。

次のように記述します。

1重線の実線のコードになり、定数で指定できます。

ActiveSheet.Shapes(1).Line.Style= msoLineSingle
ActiveSheet.Shapes(1).Line.DashStyle= msoLineSolid
Styleの定数一覧
定数説明
msoLineSingle1一重線
msoLineThinThin2細い二重線
msoLineThinThick3細い線と太い線の二重線。上が細い線で下が太い線
msoLineThickThin4太い線と細い線の二重線。上が太い線で下が細い線
msoLineThickBetweenThin5両側を細い線ではさまれた太い線
DashStyleの定数一覧
定数説明
msoLineSolid1実線
msoLineSquareDot2点線 (角)
msoLineRoundDot3点線 (丸)
msoLineDash4破線
msoLineDashDot5一点鎖線
msoLineDashDotDot6二点鎖線
msoLineLongDash7長破線
msoLineLongDashDot8長鎖線

2.図形の枠線のサンプルコード

枠線の色、太さ、スタイルを操作するサンプルコードです。

次の図を操作します。

Sub Sample1()

  With ActiveSheet.Shapes(1).Line
  
    .ForeColor.RGB = RGB(255, 0, 0) '枠線の色
    .Weight = 6 '太さ
    .Style = msoLineSingle '線のスタイル
    .DashStyle = msoLineSolid '線のタイプ
    
  End With
  
End Sub
タイトルとURLをコピーしました