6.1 罫線を付ける
セルや行、列に罫線を入れる方法です。罫線を付ける場合は???.Borders()プロパティを使って、点線や実線や二重線、太さや色、さらに上下左右どこに付けるかの設定をします。

ちなみに、???の部分は、お馴染みのRangeColumnsRowsCellsSelectionなどのセルや行列を指定するオブジェクトです。詳しくは、5.1 セルや行列を扱うための基本をどうぞ。
罫線を付ける例の基本
???.Borders()の使い方を、Rangeを使って説明します。以下の例は、セルA1の下へ細線を付けています。

Sub prcBorders()

    With Range("A1").Borders(xlEdgeBottom)
        .LineStyle = xlContinuous
        .Weight = xlThin
        .ColorIndex = xlAutomatic
    End With

End Sub
 ※このエクセルマクロはワークシート内へ記述するマクロです

これで、指定したセルに罫線が付きます。例で付けているのは、セルの下へ黒い細線です。WithEnd Withの部分が実際に背景色を付けるための設定(プロパティの設定)で、LineStyleなど各種のプロパティは以下の通りです。
Borders( )
まず、Borders( )ですが、ここではセルの上下左右のうちどこに罫線を付けるのかを指定します。例では下(xlEdgeBottom)を指定しましたね。

上下左右の各指定は、それぞれ次の通りです。

 上:xlEdgeTop
 下:xlEdgeBottom
 右:xlEdgeRight
 左:xlEdgeLeft
 内側の縦線:xlInsideVertical
 内側の横線:xlInsideHorizontal
.LineStyle
罫線の種類の指定です。細線、太線、破線などを指定します。例では実践(xlContinuous)を指定しています。

線の種類には次の種類があります。

 実線 :xlContinuous
 破線1:xlDot
 破線2:xlDash
 破線3:xlDashDot
 破線4:xlDashDotDot


 ※破線は、太さが極細線(xlHairline)または細線(xlThin)にのみ有効のようです・・・
.Weight
罫線の太さを指定します。例では細線(xlThin)を指定しています。

線の太さには、次の種類があります。

 極細線:xlHairline
 細線 :xlThin
 太線 :xlMedium
 極太線:xlThick
.ColorIndex
線の色を指定します。例では自動(xlAutomatic)を指定しています。

なお、指定できる色の種類は56色です。※図は代表例

範囲を指定して罫線を付ける例
例えば、セルB2〜セルF5の範囲へこういうふうに罫線を付けたいときは、次のようにRangeで指定した範囲の上下左右と選択範囲の内側へ、罫線をそれぞれ設定します。

Sub prcSample1()

    With Range("B2:F5")

        '上段
        With .Borders(xlEdgeTop)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

        '下段
        With .Borders(xlEdgeBottom)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

        '左側
        With .Borders(xlEdgeLeft)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

        '右側
        With .Borders(xlEdgeRight)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

        '内側の縦線
        With .Borders(xlInsideVertical)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

        '内側の横線
        With .Borders(xlInsideHorizontal)
            .LineStyle = xlContinuous
            .Weight = xlThin
            .ColorIndex = xlAutomatic
        End With

    End With

End Sub
 ※このエクセルマクロはワークシート内へ記述するマクロです
Copyright(C) 1999-2006 結城圭介。 All rights reserved