Range.Bordersボーダーズ プロパティ

本ページには広告が含まれています。

セルの罫線を表します。Indexを省略した場合は上下左右4つの辺を表すBorders コレクションIndexを指定した場合はその辺を表すBorder オブジェクトを返します。

構文
  1. Borders = Range.Borders.[_Default]( Index )
既定プロパティ
Range.Borders プロパティ
引数
Index 省略可
XlBordersIndex 列挙
戻り値
Borders コレクション

Range オブジェクトを返すメソッド・プロパティ

Range オブジェクト
セル、行、列、連続した1つ以上のセル範囲を表します。
Application.ActiveCell プロパティ
セルまたはセル範囲を表すRangeオブジェクトを返します。
Application.Cells プロパティ
作業中のワークシートのすべてのセルを表すRange オブジェクトを返します。
Range.Borders プロパティ
セル、行、列、連続した1つ以上のセル範囲を表します。
Application.Selection プロパティ
Applicationオブジェクトのアクティブなワークシートで現在選択されているオブジェクトを返します。
Range.Borders プロパティ
指定した条件に一致する最初のセルを検索します。
Range.Borders プロパティ
Findメソッドによって開始された検索を続行します。前回の検索条件に一致するセルを、下方向(行のときは左から右、列のときは上から下)に検索し、見つかったセル(Rangeオブジェクト)を返します。選択範囲やアクティブセルには影響はありません。
Range.Borders プロパティ
範囲内のセルから特定の条件に一致するRange オブジェクトを返します。条件は、セルの種類(数値、テキスト、エラーなど)やセルの状態(空白、定数、数式など)に基づいて指定することができます。
Range.Borders プロパティ
指定した範囲の列を表すRange オブジェクトを返します。
Range.Borders プロパティ
現在の領域を表すRange オブジェクトを返します。
Range.Borders プロパティ
対象セル範囲の領域における終端のRange オブジェクトへの参照を返します。
Range.Borders プロパティ
指定された範囲を含む1つまたは複数の列全体を表すRange オブジェクトを返します。読み取り専用です。
Range.Borders プロパティ
指定されたセル範囲を含む行全体を表すRange オブジェクトを返します。読み取り専用です。
Range.Borders プロパティ
指定したセル範囲のオフセット値で指定される範囲を表すRange オブジェクトを返します。
Range.Borders プロパティ
指定された範囲からオフセットした範囲を表すRange オブジェクトを返します。
Range.Borders プロパティ
指定された範囲のサイズを変更します。サイズが変更されたセル範囲を表すRange オブジェクトを返します。
Range.Borders プロパティ
指定した範囲の行を表すRange オブジェクトを返します。
Worksheet.Range プロパティ
セル、行、列、連続した1つ以上のセル範囲を表します。

定数一覧

XlBordersIndex 列挙

名前説明
xlDiagonalDown5範囲内の各セルの左上隅から右下方向に実行される罫線
xlDiagonalUp6範囲内の各セルの左下隅から右上への罫線
xlEdgeLeft7範囲内の左端の罫線
xlEdgeTop8範囲内の上側の罫線
xlEdgeBottom9範囲内の下側の罫線
xlEdgeRight10範囲内の右端の罫線
xlInsideVertical11範囲外の罫線を除く、範囲内のすべてのセルの垂直罫線
xlInsideHorizontal12範囲外の罫線を除く、範囲内のすべてのセルの水平罫線
UWSC
CONST xlDiagonalDown = 5
CONST xlDiagonalUp = 6
CONST xlEdgeLeft = 7
CONST xlEdgeTop = 8
CONST xlEdgeBottom = 9
CONST xlEdgeRight = 10
CONST xlInsideVertical = 11
CONST xlInsideHorizontal = 12

使い方

Border オブジェクトの参照

セルやセル範囲に引く罫線はその位置によって8つの種類に分かれ、それぞれ単体のBorder オブジェクトとして扱われます。その8種類の罫線は、Range オブジェクトRange.Borders プロパティの引数Indexに定数を指定して参照することができます。

_罫線.png
定数 内容
xlEdgeTop.pngxlEdgeTop 範囲内の上側の罫線
xlInsideHorizontal.pngxlInsideHorizontal 範囲外の罫線を除く、範囲内のすべてのセルの水平罫線
xlEdgeBottom.pngxlEdgeBottom 範囲内の下側の罫線
xlDiagonalUp.pngxlDiagonalUp 範囲内の各セルの左下隅から右上への罫線
xlEdgeLeft.pngxlEdgeLeft 範囲内の左端の罫線
xlInsideVertical.pngxlInsideVertical 範囲外の罫線を除く、範囲内のすべてのセルの垂直罫線
xlEdgeRight.pngxlEdgeRight 範囲内の右端の罫線
xlDiagonalDown.pngxlDiagonalDown 範囲内の各セルの左上隅から右下方向に実行される罫線

セルA1の左側の罫線を取得します。

UWSC
CONST xlEdgeLeft = 7

DIM Border = Excel.Range("A1").Borders(xlEdgeLeft)

複数の罫線を取得するときは、それぞれ実行します。以下は、セルA1の左側と下側に黒い罫線を引きます。

UWSC
DIM Border

Border = Excel.Range("A1").Borders(xlEdgeLeft)
Border.ColorIndex = 0

Border = Excel.Range("A1").Borders(xlEdgeBottom)
Border.ColorIndex = 0

Bordersコレクションの参照

Bordersコレクションは、各セルの上下左右の4つの辺の罫線を表すBorders オブジェクトの集合です。Bordersコレクションを参照するには、RangeオブジェクトのBordersプロパティを引数なしで使用します。セル範囲内のすべてのセルの上下左右に同じ罫線を引くときに使います。

以下は、セル範囲B2からC5にある各セルの上下左右に黒色の罫線を引きます。

UWSC
DIM Borders = Excel.Range("B2:C5").Borders
Borders.ColorIndex = 0

プログラム実行例

罫線を引く

B2セルにカラーパレット1番の色で罫線(外枠)を引きます。

UWSC
CONST xlContinuous = 1

DIM Excel = CREATEOLEOBJ("Excel.Application")
Excel.Visible = TRUE
Excel.Workbooks.Add()

DIM Borders = Excel.Range("B2").Borders

WITH Borders
	.LineStyle = xlContinuous
	.ColorIndex = 1
ENDWITH
使用関数

表を作成

UWSC
// XlBordersIndex
CONST xlDiagonalDown = 5
CONST xlEdgeLeft = 7
CONST xlEdgeTop = 8
CONST xlEdgeBottom = 9
CONST xlEdgeRight = 10

// XlLineStyle
CONST xlDouble = -4119
CONST xlContinuous = 1

// XlBorderWeight
CONST xlThick = 4

DIM Excel = ExcelBoot()

WITH Excel
	.Range("B2:F6").Borders.LineStyle = xlContinuous
	.Range("B2:F6").BorderAround(xlContinuous, xlThick)
	.Range("F2:F6").Borders(xlEdgeLeft).LineStyle = xlDouble
	.Range("B6:F6").Borders(xlEdgeTop).LineStyle = xlDouble
	.Range("B2").Borders(xlDiagonalDown).LineStyle = xlContinuous
	WITH .Range("B2:B6").Borders(xlEdgeRight)
		.LineStyle = xlContinuous
		.Weight = xlThick
	ENDWITH
	WITH .Range("B2:F2").Borders(xlEdgeBottom)
		.LineStyle = xlContinuous
		.Weight = xlThick
	ENDWITH
ENDWITH

//////////////////////////////////////////////////
// 【引数】
//   path : 開くファイルのパス名 
// 【戻り値】
//   <a href="https://uwsc.jp/com/excel/" >Excel オブジェクト</a> 
//////////////////////////////////////////////////
FUNCTION ExcelBoot(path = "")
	DIM Excel = CREATEOLEOBJ("Excel.Application")
	Excel.Visible = TRUE
	IFB path = "" THEN
		Excel.Workbooks.Add
	ELSE
		DIM FSO = CREATEOLEOBJ("Scripting.FileSystemObject")
		IFB FSO.GetParentFolderName(path) = "" THEN
			path = GET_CUR_DIR + "\" + path
		ENDIF
		Excel.Workbooks.Open(path)
	ENDIF
	RESULT = Excel
FEND
結果
.png
使用関数
解説

関連記事

Range オブジェクト
セル、行、列、連続した1つ以上のセル範囲を表します。
Application.ActiveCell プロパティ (Excel)
セルまたはセル範囲を表すRangeオブジェクトを返します。
Application.Cells プロパティ (Excel)
作業中のワークシートのすべてのセルを表すRange オブジェクトを返します。
Range.Activate メソッド (Excel)
1つのセルをアクティブにします。セルは現在の選択範囲内にある必要があります。セルの範囲を選択するには、Selectメソッドを使用します。
Range.AutoFill メソッド (Excel)
指定された対象セル範囲内のセルに対してオートフィルを実行します。
Range.AutoFilter メソッド (Excel)
オートフィルターを使ってリストをフィルター処理します。
Range.ClearHyperlinks メソッド (Excel)
指定された範囲からすべてのハイパーリンクを削除します。
Range.Copy メソッド (Excel)
範囲を、指定の範囲またはクリップボードにコピーします。
Range.DiscardChanges メソッド (Excel)
編集されたセル範囲内のすべての変更を破棄します。
Range.NumberFormatLocal プロパティ (Excel)