「エクセルvba 罫線を引く 内側の垂直線のみ」
という検索で、このサイト・インストラクターのネタ帳へアクセスがありました。
セル範囲の内側に垂直罫線を引くサンプルマクロ
以下のSubプロシージャを実行すると、B2:D4セルの、内側に、太い赤色の垂直罫線が引かれますWith Range("B2:D4")
.BorderAround Weight:=xlThin
With .Borders(xlInsideVertical)
.Weight = xlThick
.Color = RGB(255, 0, 0)
End With
End With
End Sub
最初の、
With Range("B2:D4")
.BorderAround Weight:=xlThin
の部分は、このセル範囲の内側に垂直罫線を引くことを明確にするために、Range.BorderAroundメソッドで外枠罫線を引いている処理ですから、
「エクセルvba 罫線を引く 内側の垂直線のみ」
とは、関係ありません。
内側の垂直罫線を引いているのは、
With Range("B2:D4")
With .Borders(xlInsideVertical)
.Weight = xlThick
.Color = RGB(255, 0, 0)
の部分です。
Bordersプロパティの引数(厳密にはBordersコレクションオブジェクトの_Defaultプロパティの引数)に、定数xlInsideVerticalを指定すると、セル範囲の内側垂直罫線を表すBorderオブジェクトを取得できます。
ここではBorderオブジェクトのWeightプロパティとColorプロパティを設定しています。
セル範囲の内側に水平罫線を引くサンプルマクロ
以下のSubプロシージャを実行すると、B6:D8セルの、内側に、太い赤色の水平罫線が引かれますWith Range("B6:D8")
.BorderAround Weight:=xlThin
With .Borders(xlInsideHorizontal)
.Weight = xlThick
.Color = RGB(255, 0, 0)
End With
End With
End Sub
先の垂直罫線を引くマクロで、
With .Borders(xlInsideVertical)
となっていた行が、
With .Borders(xlInsideHorizontal)
と、定数xlInsideHorizontalを使って、内側の水平罫線を表すBorderオブジェクトを取得しているところだけが、違います。
- Newer:合計の小数点以下を切り捨てる-SUM関数・INT関数
- Older:Excel VBAで余白を0にする
Home » Excel VBA Rangeオブジェクト » 罫線・Borders » セル範囲の内側にVBAで罫線を引く-Borders(xlInsideVertical)・Borders(xlInsideHorizontal)