VBA實例13詳解VBA中的單元格邊框對象Borders

為了表格美觀,我們會對EXCEL表格的單元格甚至各種類型的邊框,如果不涉及VBA我們可以在開始菜單的快捷圖標下設置邊框,顏色以及樣式,如下圖13-1

13-1 Excel表格中的邊框設置位置

那麼如果我們以後VBA要設置這些該怎麼寫代碼呢?

VBA中邊框是一個整體對象,即Borders他裡面包含了8個子對象,斜上,斜下,上下左右,內橫內豎共8個。

而設置顏色的話依然是兩個,這個上節就提到過的屬性Color和ColorIndex

而剩下的就是邊框的樣式和粗細了,對應LineStyle和Weight屬性

我們來看下面的代碼截圖13-2來看一下邊框如何設置

Public Sub Fig_1()

Advertisements

Rem 邊框的八個子對象

Range("B2:C3").Borders(xlDiagonalDown).LineStyle = xlContinuous'斜下邊框

Range("E2:F3").Borders(xlDiagonalUp).LineStyle = xlContinuous'斜上邊框

Range("H2:I3").Borders(xlEdgeLeft).LineStyle = xlContinuous'左邊框

Range("K2:L3").Borders(xlEdgeRight).LineStyle = xlContinuous'右邊框

Range("N2:O3").Borders(xlEdgeTop).LineStyle = xlContinuous'上邊框

Advertisements

Range("Q2:R3").Borders(xlEdgeBottom).LineStyle = xlContinuous'下邊框

Range("T2:U3").Borders(xlInsideHorizontal).LineStyle =xlContinuous '內部水平橫邊框

Range("W2:X3").Borders(xlInsideVertical).LineStyle =xlContinuous '內部垂直豎邊框

Range("Z2:AA3").Borders().LineStyle = xlContinuous'括弧內沒有子對象則顯示除斜邊框外所有框線

Rem 邊框的顏色設置一Color

With Range("B5:C6").Borders()

.LineStyle = xlContinuous '括弧內沒有子對象則顯示除斜邊框外所有框線

.Color = RGB(176, 234, 156)

End With

Rem 邊框的顏色設置二ColorIndex

With Range("E5:F6").Borders()

.LineStyle = xlContinuous '括弧內沒有子對象則顯示除斜邊框外所有框線

.ColorIndex = 3

End With

Rem 邊框樣式其中最常見的一種(13鍾共計),通過設置LineStyle和Weight屬性

With Range("H5:I6").Borders()

.LineStyle = False '括弧內沒有子對象則顯示除斜邊框外所有框線

End With

End Sub

13-2 代碼截圖以及註釋

F5運行的效果如下,每行代碼都是以4個單元格為一個區域結果如下13-3

13-3 邊框設置運行結果

在上面的截圖中因版面問題只把樣式舉一個例子,下圖更直觀地表現出13種邊框樣式,見13-4

13-4 邊框樣式13種

好了,如果你的英語夠好,記住上面的代碼真的超級簡單,至此所有邊框的問題你就都明白了。

其餘還有一些寫法問題,如

Range("A1").Borders.LineStyle = xlNone

Range("A1").Borders.LineStyle = 0

Range("A1").Borders.LineStyle = False

上面三行代碼都是取消邊框,怎麼用看你心情。

如果你用了上面的三行取消邊框代碼,但設置有Weight那麼邊框不會被取消,除非不設置Weight或者設置Weight值也是0

本節知識點總結:

Borders對象以及其8個子對象

LineStyle屬性和Weight屬性及寫法

Color和ColorIndex屬性及寫法複習

With語句複習

Advertisements

你可能會喜歡