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

本文基于以下文件

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

(部分)内容预览:

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

结果如下:

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

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

2. 边框颜色

rng.Borders.ColorIndex = 3

或者

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

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

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

3. 边框宽度

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

rng.Borders.Weight = xlThick

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

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

结果如下

4. 单边框

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

rng.Borders(xlEdgeBottom).LineStyle = xlContinuous

结果如下:

这里代码里面使用的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 入门(十)用户窗体开发

posted @ 2017-11-13 22:41  东围居士  阅读(25869)  评论(0编辑  收藏  举报