8/05/2022

Excel。VBA。太い外枠で中は格子の罫線を毎回設定するのが面倒なんです【Ruled line】

Excel。VBA。太い外枠で中は格子の罫線を毎回設定するのが面倒なんです

<VBA:罫線>

単純な処理を毎回毎回設定するのは、とても面倒です。

それが単純になればなるほどです。


例えば、作成した表の罫線を設定する処理も、そのうちの一つだといえます。


B2:E7に表があります。


この表に、外側は、「太い外枠」で設定します。

内側は、「格子」の罫線で設定したい場合、範囲選択をしてホームタブにある罫線ボタンから「格子」を選択して、再度「太い外枠」を選択しなければなりません。


マクロの記録でつくっては、表の大きさが変わってしまうと、対応できませんので、表の大きさが変わっても対応できるように、Excel VBAでプログラムをつくります。


Sub 罫線外太内格子()

    Range("b2").CurrentRegion.Borders.LineStyle = True

    Range("b2").CurrentRegion.BorderAround Weight:=xlThick

End Sub


たった、この2行だけで、外側は、「太い外枠」で設定して、内側は、「格子」の罫線を設定できます。


まずは実行して確認してみましょう。


では、プログラム文を確認しておきましょう。

「Range("b2").CurrentRegion.Borders.LineStyle = True」


「Range("b2").CurrentRegion」は、B2を起点として連続するセル、つまりB2を起点とする表を選択しています。


「Borders.LineStyle = True」は、Bordersは、「線」で「LineStyle = True」で「格子」を設定することができます。


2行目も確認します。

「Range("b2").CurrentRegion.BorderAround Weight:=xlThick」


「BorderAround Weight:=xlThick」の「BorderAroundメソッド」は、外枠についてです。


その外枠を「Weight:=xlThick」と設定することで「線を太く」することができます。


たった2行ですが、作業効率も改善しますし、何よりも面倒な処理が緩和できるのが魅力ですね。


今回は、簡単な罫線の表でしたが、線種や色に太さなどに加えて、上下左右を詳細に設定することができます。