OfficeType

VBA~セルの罫線の種類、太さ、色を設定しよう~Excel

VBAでセルの罫線の種類、太さ、色を設定したい時はRange.Bordersプロパティで設定できます。

罫線の種類の設定

罫線の種類を設定したい時はBorder.LineStyleプロパティで設定できます。下のコードを実行するとセルB2に実線の罫線が設定されます。

Sub test1()

Range("B2").Borders.LineStyle = xlContinuous

End Sub

image-01

image-02

線の種類は以下の通りになります。

名前説明
xlContinuous1実線
xlDash4115破線
xlDashDot4一点鎖線
xlDashDotDot5ニ点鎖線
xlDot-4118点線
xlDouble-4119本線
xlLineStyleNone-4142線なし
xlSlantDashDot13斜破線

罫線の太さを設定

罫線の太さを設定したい時はBorders.Weightプロパティで設定できます。下のコードを実行するとセルB2に太さが中の罫線が設定されます。

Sub test2()

Range("B2").Borders.Weight = xlMedium

End Sub

image-03

image-04

線の太さの種類は以下の通りになります。

名前説明
xlHairline1細線
xlMedium-4138普通
xlThick4太線
xlThin2極細

罫線の色を設定する

罫線の色を設定したい時はBorder.Colorプロパティで設定できます。下のコードを実行するとセルB2に赤のの罫線が設定されます。

Sub test3()

Range("B2").Borders.Color = RGB(255, 0, 0)

End Sub

image-05

image-06

罫線を引く箇所を指定

罫線を引く箇所を指定したい時はBordersオブジェクトの定数で指定します。書き方はBorders(定数)になります。定数を設定しない場合は上下左右、範囲内の水平、垂直の罫線が設定されます。下のコードを実行するとセルB2の下側に罫線が設定されます。

Sub test4()

Range("B2").Borders(xlEdgeBottom).LineStyle = xlContinuous

End Sub

image-07

image-08

罫線を引く箇所の一覧は以下の通りになります。

名前説明
xlDiagonalDown5範囲内の各セルの左上隅から右下に移動する罫線。
xlDiagonalUp6範囲の各セルの左下隅から右上隅に移動する罫線。
xlEdgeBottom9範囲内の下側の罫線
xlEdgeLeft7範囲の左側の罫線。
xlEdgeRight10範囲の右端の罫線。
xlEdgeTop8範囲内の上側の罫線
xlInsideHorizontal12範囲外の罫線を除く、範囲内のすべてのセルの水平罫線
xlInsideVertical11範囲外の罫線を除く、範囲内のすべてのセルの垂直罫線

罫線の種類、太さ、色の組み合わせ

罫線の種類、太さ、色を組み合わせて自由に罫線を設定しましょう。罫線の種類と太さの組み合わせは限定されているので、設定できない組み合わせもあります。下のコードを実行するとニ点鎖線で太さ中の赤色の罫線が設定されます。

Sub test5()

With Range("B2").Borders

.LineStyle = xlDashDotDot
.Weight = xlMedium
.Color = RGB(255, 0, 0)

End With

End Sub

image-09

image-10

範囲に罫線を設定する

範囲を指定したい時はRange("範囲の左上のセル:範囲の右下のセル")で指定できます。 下のコードを実行するとセルB2からセルD4に罫線が設定されます。

Sub test6()

Range("B2:D4").Borders.LineStyle = xlContinuous

End Sub

image-11

image-12

指定したシートに罫線を設定

シートを指定するときはWorksheets("シート名")で指定できます。下のコードを実行するとSheet2のセルB2に罫線が設定されます。

Sub test7()

Worksheets("Sheet2").Range("B2").Borders.LineStyle = xlContinuous

End Sub

image-13

image-14

ブックを指定して罫線を設定

ブックを指定するときはWorkbooks("ブック名")で指定できます。Book1.xlsxというブックが開いた状態で下のコードを実行するとBook1.xlsxのSheet1のセルB2に罫線が設定されます。

Sub test8()

Workbooks("Book1.xlsx").Worksheets("Sheet1").Range("B2").Borders.LineStyle = xlContinuous

End Sub