罫線の種類と色を設定する
Excel の罫線は線の種類や色を選択することができます。ここでは Excel VBA を使って罫線の種類と色を設定する方法について解説します。
(Last modified: )
罫線の種類を設定する
罫線の線の種類は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
上記マクロを実行すると次のようになります。
			 
			
罫線の色を設定する
罫線の色については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
上記マクロを実行すると次のようになります。
			 
			
-- --
Excel VBA を使って罫線の種類と色を設定する方法について解説しました。
( Written by Tatsuo Ikura )
 
				著者 / TATSUO IKURA
これから IT 関連の知識を学ばれる方を対象に、色々な言語でのプログラミング方法や関連する技術、開発環境構築などに関する解説サイトを運営しています。
