Excel VBAの覚え書([セルの書式設定]-[罫線](Bordersプロパティ)編)
■RangeオブジェクトのBordersプロパティ
罫線に関する処理を行う場合、Bordersコレクション(またはBorderオブジェクト)のプロパティを使用します。
Bordersコレクション(またはBorderオブジェクト)は、RangeオブジェクトのBordersプロパティで取得します。
Bordersプロパティの詳細
Microsoftのサイトで「Bordersプロパティ」を調べると、以下のように記載されています。
- スタイルの罫線またはセル範囲(条件付き書式の一部として定義された範囲を含む)を表すBordersコレクションを返します。
また、オブジェクト・ブラウザでBordersプロパティを参照すると以下のように定義されており、何も引数を指定することなく、Bordersオブジェクトを取得できることがわかります。
- Property Borders As Borders
■Bordersコレクション、Borderオブジェクトの詳細
BordersコレクションとBorderオブジェクトのプロパティはほとんど同じなので、1つの表にまとめて掲載します(メソッドはありません)。
(Bordersコレクション、Borderオブジェクトのプロパティ)
Applicationプロパティ(読み取り専用) | |||||||||||
説明 | Applicationオブジェクト(Excel)を取得 | ||||||||||
定義 | Property Application() As Application | ||||||||||
Colorプロパティ | |||||||||||
説明 | 罫線の色をRGB値で設定/取得 | ||||||||||
定義 | Property Color() As Variant | ||||||||||
ColorIndexプロパティ | |||||||||||
説明 | 罫線の色をカラー・パレットのインデックスで設定/取得
(※)カラー・パレット番号またはXlColorIndex列挙体を使用可能。 |
||||||||||
定義 | Property ColorIndex() As Variant | ||||||||||
Countプロパティ(読み取り専用)(Bordersコレクションのみ) | |||||||||||
説明 | コレクションに含まれるオブジェクトの数を取得 | ||||||||||
定義 | Property Count() As Long | ||||||||||
Creatorプロパティ(読み取り専用) | |||||||||||
説明 | オブジェクトを作成したアプリケーションの整数値を取得
(※)XlCreator列挙体は、以下の値のみ。 |
||||||||||
定義 | Property Creator() As XlCreator | ||||||||||
Itemプロパティ(読み取り専用)(Bordersコレクションのみ) | |||||||||||
説明 | セル範囲またはスタイルのいずれかの罫線を表すBorderオブジェクトを取得
(※)XlBordersIndex列挙体は、以下の通り。 |
||||||||||
定義 | Property Item(Index As XlBordersIndex) As Border | ||||||||||
LineStyleプロパティ | |||||||||||
説明 | 罫線または輪郭線の種類を設定/取得
(※)XlLineStyle列挙体は、以下の通り。 その他にxlGray25(25%灰色)、xlGray50(50%灰色)、xlGray75(75%灰色)、xlAutomatic(自動)を指定可能。 |
||||||||||
定義 | Property LineStyle() As XlLineStyle | ||||||||||
Parentプロパティ(読み取り専用) | |||||||||||
説明 | 指定されたオブジェクトの親オブジェクトを取得 | ||||||||||
定義 | Property Parent() As Object | ||||||||||
ThemeColorプロパティ | |||||||||||
説明 | 指定したオブジェクトに適用する配色のテーマの色を設定/取得
(※)XlThemeColor列挙体は、以下の通り。 |
||||||||||
定義 | Property ThemeColor() As XlThemeColor | ||||||||||
TintAndShadeプロパティ | |||||||||||
説明 | 色を明るく、または暗くする単精度浮動小数点型(Single)の値を設定/取得 | ||||||||||
定義 | Property TintAndShade() As Variant | ||||||||||
Valueプロパティ(Bordersコレクションのみ) | |||||||||||
説明 | 罫線または輪郭線の種類を設定/取得(LineStyleプロパティと同様) | ||||||||||
定義 | Property Value() As XlLineStyle | ||||||||||
Weightプロパティ | |||||||||||
説明 | 罫線の重みを表す値を設定/取得
(※)XlBorderWeight列挙体は、以下の通り。 |
||||||||||
定義 | Property Weight() As XlBorderWeight |
■Bordersコレクション、Borderオブジェクトの使用方法
基本的な使用法は、以下の通りです。
格子状に罫線を引く
BordersコレクションのLineStyleプロパティに線種を設定することにより、格子状に罫線を引くことができます。
- sht.UsedRange.Borders.LineStyle = xlContinuous
外枠の罫線を引く
BordersコレクションのLineStyleプロパティで設定可能ですが、1本ずつ罫線を引く必要があって面倒なので、RangeオブジェクトのBorderAroundメソッドを使用します。
(BorderAroundメソッドの定義)
BorderAroundメソッド | |||||||||||
説明 | 範囲に罫線を追加し、新しい罫線のBorderオブジェクトのColorプロパティ 、LineStyleプロパティ、Weightプロパティを設定する | ||||||||||
定義 | Function BorderAround([LineStyle], [Weight As XlBorderWeight = xlThin], [ColorIndex As XlColorIndex = xlColorIndexAutomatic], [Color], [ThemeColor]) |
- sht.UsedRange.BorderAround LineStyle:=xlContinuous
上側の罫線を引く
Bordersコレクションにインデックスを指定して上側の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlEdgeTop).LineStyle = xlContinuous
下側の罫線を引く
Bordersコレクションにインデックスを指定して下側の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlEdgeBottom).LineStyle = xlContinuous
左側の罫線を引く
Bordersコレクションにインデックスを指定して左側の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlEdgeLeft).LineStyle = xlContinuous
右側の罫線を引く
Bordersコレクションにインデックスを指定して右側の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlEdgeRight).LineStyle = xlContinuous
内側に垂直の罫線を引く
Bordersコレクションにインデックスを指定して垂直の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlInsideVertical).LineStyle = xlContinuous
内側に水平の罫線を引く
Bordersコレクションにインデックスを指定して水平の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlInsideHorizontal).LineStyle = xlContinuous
右上りの斜線を引く
Bordersコレクションにインデックスを指定して右上りの斜線の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlDiagonalUp).LineStyle = xlContinuous
右下りの斜線を引く
Bordersコレクションにインデックスを指定して右下りの斜線の罫線を特定したうえ、LineStyleプロパティで線種を設定します。
- sht.UsedRange.Borders(xlDiagonalDown).LineStyle = xlContinuous
罫線の色を設定する
BordersオブジェクトのColorプロパティにRGB関数で値を設定することにより、罫線の色を設定することができます。
- sht.UsedRange.Borders.Color = RGB(255, 0, 0)
カラー・パレットに定義されている色であれば、BordersオブジェクトのColorIndexプロパティでも設定可能です。
- sht.UsedRange.Borders.ColorIndex = 3
出版社:インプレス
発売日:2022/3/23
単行本(ソフトカバー):A5判/912ページ
出版社:技術評論社
発売日:2021/1/9
単行本(ソフトカバー):A5判/800ページ
出版社:技術評論社
発売日:2019/11/25
単行本(ソフトカバー):B5変形判/576ページ
ディスカッション
コメント一覧
まだ、コメントがありません