罫線の種類と色を設定する

Excel の罫線は線の種類や色を選択することができます。ここでは Excel VBA を使って罫線の種類と色を設定する方法について解説します。

(2022 年 06 月 13 日公開 / 2022 年 06 月 18 日更新)

罫線の種類を設定する

罫線の線の種類はBorderオブジェクトの「LineStyle」プロパティで管理されています。デフォルトでは罫線を表示しない「xlLineStyleNone」が設定されていますので罫線を表示したい場合には「LineStyle」プロパティに適切な値を設定します。

Dim border1 As Border

Set border1 = Range("A1").Borders(xlEdgeTop)
border1.LineStyle = xlContinuous

設定可能な罫線の種類は次のようになります。

定数罫線の種類
xlContinuous実線(細)
xlDash破線
xlDashDot一点鎖線
xlDashDotDot二点鎖線
xlDot点線
xlDouble二重線
xlSlantDashDot斜め斜線
xlLineStyleNone無し

罫線は形状の他にも線の太さを設定可能です。Borderオブジェクトの「Weight」プロパティで設定します。

Dim border1 As Border

Set border1 = Range("A1").Borders(xlEdgeTop)
border1.LineStyle = xlContinuous
border1.Weight = xlMedium

設定可能な罫線の太さは次のようになります。

定数罫線の太さ
xlHairline極細
xlThin
xlMedium
xlThick

罫線の線種と太さを組み合わせることで多くの種類の罫線を描く事ができますが、設定が出来ない組み合わせもありますので注意して下さい。

サンプルプログラム

では簡単なサンプルで試してみましょう。

Sub テスト()
    
    With Range("B2:C3")
        .Borders(xlEdgeTop).LineStyle = xlContinuous
        .Borders(xlEdgeBottom).LineStyle = xlDash
        .Borders(xlEdgeLeft).LineStyle = xlDashDot
        .Borders(xlEdgeRight).LineStyle = xlDouble
    End With
    
    With Range("C3:E7")
        .Borders(xlEdgeTop).LineStyle = xlContinuous
        .Borders(xlEdgeTop).Weight = xlHairline
        .Borders(xlEdgeBottom).LineStyle = xlContinuous
        .Borders(xlEdgeBottom).Weight = xlThin
        .Borders(xlEdgeLeft).LineStyle = xlContinuous
        .Borders(xlEdgeLeft).Weight = xlMedium
        .Borders(xlEdgeRight).LineStyle = xlContinuous
        .Borders(xlEdgeRight).Weight = xlThick
    End With
    
End Sub

上記マクロを実行すると次のようになります。

罫線の種類を設定する(1)

罫線の色を設定する

罫線の色についてはBorderオブジェクトの「ColorIndex」プロパティで設定します。ここで「ColorIndex」プロパティは文字色の設定で使った「ColorIndex」プロパティと同じで全部で57種類の色が用意されており、0から56のインデックス番号で指定します。(詳しくは「文字色の設定」を参照して下さい)。

記述の方法は次のようになります。

Dim border1 As Border

Set border1 = Range("A1").Borders(xlEdgeTop)
border1.ColorIndex = 12

サンプルプログラム

では簡単なサンプルで試してみましょう。

Sub テスト()
    
    With Range("B2:C3")
        .Borders(xlEdgeTop).LineStyle = xlContinuous
        .Borders(xlEdgeTop).ColorIndex = 12
        .Borders(xlEdgeBottom).LineStyle = xlContinuous
        .Borders(xlEdgeBottom).ColorIndex = 32
        .Borders(xlEdgeLeft).LineStyle = xlContinuous
        .Borders(xlEdgeLeft).ColorIndex = 6
        .Borders(xlEdgeRight).LineStyle = xlContinuous
        .Borders(xlEdgeRight).ColorIndex = 45
    End With
    
End Sub

上記マクロを実行すると次のようになります。

罫線の色を設定する(1)

-- --

Excel VBA を使って罫線の種類と色を設定する方法について解説しました。

( Written by Tatsuo Ikura )

広告
Profile
profile_img

著者 / TATSUO IKURA

初心者~中級者の方を対象としたプログラミング方法や開発環境の構築の解説を行うサイトの運営を行っています。