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 入门(十)用户窗体开发
Excel VBA入门(八)单元格边框的更多相关文章
- 疑难杂症 | Excel VBA锁定指定单元格区域
背景:锁定EXCEL表头 一.手动操作流程 其基本逻辑并不赋值,手动操作流程是: 1.取消所有单元格的"锁定"格式 CTRL+A,选中全部的单元格→单击右键→设置单元格格式→保护→ ...
- excel VBA把一个单元格内容按逗号拆分并依次替换到另一个单元格的括号里面(本题例子,把文本中的括号换成{答案}的格式,并按顺序填空)
方法1:运用excel单元格拆分合并实现 思路:用VBA正则查询左侧括号个数,对右侧单元格逐一按逗号.顿号等符号分列,同时左侧按括号分列(分列只能按括号单边分列),分列完成后按要求合并,本题事例把括号 ...
- excel VBA正则匹配单元格符号,并按符号把单元格拆分行(这里是按第一列分行,分行是从活动单元格的行开始,分行前需要选择所有需要填充内容的列,否则需要后期手动填充)
Sub W() ' MsgBox "行数:" & Selection.Rows.Count Dim rows_count As Integer Dim ro ...
- excel VBA返回选中单元格区域的行数、列数,以及活动单元格的行号和列号
Private Sub Worksheet_SelectionChange(ByVal Target As Range) '可以直接sub(),不然选择就会触发vba Dim rows_coun ...
- C# 对Excel 单元格格式, 及行高、 列宽、 单元格边框线、 冻结设置
一.对行高,列宽.单元格边框等的设置 这篇简短的文字对单元格的操作总结的比较全面,特此转载过来. private _Workbook _workBook = null; private Workshe ...
- C# Excel行高、列宽、合并单元格、单元格边框线、冻结
private _Workbook _workBook = null;private Worksheet _workSheet = null;private Excel.Application _ex ...
- C#操作EXCEL常见操作集合(行高,列宽,合并单元格,单元格边框线)
private _Workbook _workBook = null; private Worksheet _workSheet = null; private Excel.Application _ ...
- Excel VBA入门(九)操作工作薄
虽然我前面讲过,在VBA中操作工作薄并不是件明智的事,但有些时候,还是避免不了要这么做.绝大多数情况下,我们要做的是获取到某个工作薄对象,并以此来获得其中的工作表对象,然后再对工作表中的数据进行处理. ...
- Excel VBA入门(七)注释、宏按钮及错误处理
系统性的知识前面已经讲完,从本章开始,本系列教程涉及的将会是一些相对凌散的内容. 1. 注释 代码注释是一件利人利己的事,为了方便自己在代码需要更新修改时,依然能够快速地看懂自己完的每一行代码到底是什 ...
随机推荐
- Python3 元组Tuple(十二)
元组:tuple.tuple和list非常类似,但是tuple一旦初始化就不能修改 元组使用小括号,列表使用方括号. 元组创建很简单,只需要在括号中添加元素,并使用逗号隔开即可. 如下实例: tup1 ...
- IDEA12使用初体验
最近将开发工具IDEA升级到了12.0版本,被它新的UI界面深深吸引,看下面,很酷哦~ 一.下载安装 在IDEA官网下载最近版本12.0,有免费的社区版,还有收费的无限制版,大家可以自行下载. 下载后 ...
- timer Compliant Controller project (3)--bom and sch
After optimization of structural solution , I must prepare the bom and drawing circuit diagram as ...
- WebGL编程指南案例解析之绘制一个点
<!DOCTYPE html> <html> <head> <title>webgl</title> <style type=&quo ...
- 实现react中的自动保存--定时任务
1. 定义和用法 setInterval() 方法可按照指定的周期(以毫秒计)来调用函数或计算表达式. setInterval() 方法会不停地调用函数,直到 clearInterval() 被调用或 ...
- winform messagebox 统一
vb.net 里面有两种messagebox,一种是vb语言提供的msgbox,另一种是.net framework 提供的messagebox.在此统一使用messagebox. Warning,提 ...
- Ipv4和Ipv6的地址字符串长度
SOURCE IPv4采用32位地址长度 xxx.xxx.xxx.xxx 15max(string) IPv6采用128位地址长度 估计是 xxx.xxx.xxx.xxx. xx ...
- CF-1055E:Segments on the Line (二分&背包&DP优化)(nice problem)
You are a given a list of integers a 1 ,a 2 ,…,a n a1,a2,…,an and s s of its segments [l j ;r j ] [ ...
- Redis学习笔记-事务控制篇(Centos7)
一.事务控制 1.简单事务控制 redis可以使用mult命令将之后的命令都存放在队列中,只有使用exec命令时才全部执行. 127.0.0.1:6379> multi OK 127.0.0.1 ...
- Gym 100712L Alternating Strings II(单调队列)
题目链接 Alternating Strings II 题意是指给出一个长度为n的01串,和一个整数k,要求将这个01串划分为很多子串(切很多刀),使得每个子串长度不超过k,且每个字串不是01交替出现 ...