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語句複習