セルの罫線の取得と設定

Bordersプロパティ

罫線の位置は上、下、左、右、縦、横、右上がり斜線、右下がり斜線、の8つがあります。それぞれがBorderオブジェクトで表します。

このBorderオブジェクトの取得や設定はBordersプロパティで行います。

各罫線はBorderオブジェクトで定義されますので、罫線の色や太さや線の種類を指定する場合はBordersプロパティで上下左右などのどの位置なのかを指定しなければなりません。

位置を決める→色・種類・太さを指定する、という順になります。ここでは位置を決めるBorderオブジェクトについて説明します。

構文

戻り値

定数未指定時と指定時ではBordersプロパティの戻り値が異なります。
定数未設定時:Bordersオブジェクト
定数設定時:Borderオブジェクト
引数を省略することはあまりないと思いますが、その場合の戻り値はBordersオブジェクトになります。

戻り値のBorderオブジェクトには以下のプロパティがあります。

プロパティ名 説明
Color 罫線の色をRGB値で表す
ColorIndex 罫線の色の番号を1から56で表す
LineStyle 罫線の種類をXlLineStyle列挙型の定数で表す
Weight 罫線の太さをXlBorderWeight列挙型の定数で表す
親オブジェクト

親オブジェクトにはセル範囲を示すRangeオブジェクトを指定します。

Bordersプロパティの引数Index

Indexには罫線の位置を示すXlBordersIndex列挙型の定数を指定します。(Index)を省略した場合は上下左右、水平、垂直の6つの罫線を指定したとみなします。

XlBordersIndex列挙型

定数 説明
指定なし(引数省略時) なし 上下左右、水平、垂直の6つの線
xlDiagonalDown 5 右下がり斜線
xlDiagonalUp 6 右上がり斜線
xlEdgeBottom 9 下線
xlEdgeLeft 7 左線
xlEdgeRight 10 右線
xlEdgeTop 8 上線
xlInsideHorizontal 12 垂直線
xlInsideVertical 11 水平線



斜線の注意点

右下がり斜線のxlDiagonalDown、または、右上がり斜線のxlDiagonalUpでの罫線を設定する場合に、単一セルではなくセル範囲に対して罫線を引いても、各セルの斜線が設定されます。セル範囲全体に対して斜線を引くことはできません。

ただし、結合セルの場合は、その結合セルを1つのセルとみなして斜線が引かれます。

Bordersオブジェクト取得時の注意点

セル範囲の上下左右、水平、垂直の罫線の種類や太さが異なる部分がある場合にBordersオブジェクトを取得すると、Nullが返却されます。

1つの値に限定できない場合はNullになりますので、取得値の判定が必要な場合はIsNull関数でNullかどうかの判定を行う必要があります。

サンプルコード

実線を引くサンプルです。5行目はBordersの定数を省略しています。10行目以降は8種類の位置をそれぞれ使っています。

関連記事

サブコンテンツ

このページの先頭へ