Excel VBA入门(八)单元格边框

本文基于以下文件

http://pan.baidu.com/s/1nvJtsu9

(部分)内容预览:

Excel VBA入门(八)单元格边框

1. 边框样式

Sub cell_format()
Dim sht As Worksheet
Dim rng As Range Set sht = Worksheets("Parameter")
Set rng = sht.Range("B2:C20") ' 设置边框格式
' 这是常规的实线、细线,默认颜色为黑色
rng.Borders.LineStyle = xlContinuous
End Sub

结果如下:

Excel VBA入门(八)单元格边框

这里的xlContinuous代表着一种默认的Excel边框风格,总共有以下几种:

Excel VBA入门(八)单元格边框

除了直接用各种风格的名字外,也可以使用它对应的值来代替。有兴趣的杺尝试下不同的边框风格,看看效果。

2. 边框颜色

rng.Borders.ColorIndex = 3

或者

rng.Borders.Color = RGB(0, 255, 0)

前面一种是直接使用VBA内置的几种颜色值,后一种则可以直接使用RGB颜色,可以实现更高的个性化。VBA内置的颜色及对应的值如下:

Excel VBA入门(八)单元格边框

所以示例代码中,ColorIndex = 3,即表示使用的是红色。结果如下:

Excel VBA入门(八)单元格边框

3. 边框宽度

(在做这一步之前,我把前面的边框给清掉了)

rng.Borders.Weight = xlThick

这里的xlThick也是一种内置的属性,共有以下几种:

Excel VBA入门(八)单元格边框

同样的,也可以使用它们对应的值来代替。

结果如下

Excel VBA入门(八)单元格边框

4. 单边框

单边框,也就是只要一个方向有边框。只要在前面例子中的Borders后面加上括号,在括号内指定边就行了,其它设置不变:

rng.Borders(xlEdgeBottom).LineStyle = xlContinuous

结果如下:

Excel VBA入门(八)单元格边框

这里代码里面使用的xlEdgeBottom表示下边框的意思,但要提醒的是,这个“下边框”指的是整个单元格区域(B2:C20)的底部边框,而不是“这个区域内部所有单元格的底部边框”。如果为要内部所有单元格都加上底线,可以用:

rng.Borders(xlInsideHorizontal).LineStyle = xlContinuous

其它形式的边框,可以自己去摸索

5. 使用with语句

前面1、2、3节,在设置边框的样式、颜色、宽度时,都使用的rng.Borders.xxx的形式,其实VBA中支持with语句,可以省去一些重复的代码,更简洁高效。如可用以下代码同时设置表格样式、颜色、宽度:

    With rng.Borders
.LineStyle = xlContinuous
.ColorIndex = 3
.Weight = xlThick
End With

记得在对对象操作完后,要加上End With


本系列教程其它文章

Excel VBA 入门(零)

Excel VBA 入门(一)数据类型

Excel VBA 入门(二)数组和字典

Excel VBA 入门(三) 流程控制1-条件选择

Excel VBA 入门(四)流程控制2-循环控制

Excel VBA 入门(五)Excel对象操作

Excel VBA 入门(六)过程和函数

Excel VBA 入门(七)注释、宏按钮及错误处理

Excel VBA 入门(八)单元格边框

Excel VBA 入门(九)操作工作薄

Excel VBA 入门(十)用户窗体开发

上一篇:【LeetCode每天一题】Candy(分糖果)


下一篇:135.Candy