Excel高亮所选单元格所在行列
§ Excel自动高亮行列
在使用Excel的时候,有时候需要看某一单元格所在行或者列的其他数据,当数据特别多的时候,找同一行的数据就显的很难受,高亮当前所在行列有两种方式;
方案一:新建规则,通过函数高亮|优点是不需要开启宏,但是每次选中单元格后需要按F9才可以高亮,比较繁琐。
1.VB程序实现
使用开发工具中的VB进行程序控制
- 优点是每次单击即可激活高亮相应的行列,直接复制代码进去即可,使用方便
- 缺点是退出后最后一个高亮的行列会被填充颜色,原来的颜色会被清除
- 对于没有填充颜色,且不要求保留原来颜色的元格,可以采用如下方法
- 实现代码如下
'这样的行是VB注释,不会被编译
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
With Target
'清除工作表单元格的背景色
.Parent.Cells.Interior.ColorIndex = xlNone
'设置选中区域所在行的背景色,这里是RGB颜色的十进制代码
.EntireRow.Interior.Color = 5296274
'设置选中区域所在列的背景色,这里是RGB颜色的十进制代码
.EntireColumn.Interior.Color = 5296274
End With
End Sub
2.VB程序加条件规则和公式实现
步骤如下:
- 2.1创建名称
公式→定义名称→输入名称→输入起范围(定义的时候可选,之后不可修改)→在引用位置处输入函数
//63 传回储存格的填满色彩
//单元格位置都可以,大门时需要注意不能加绝对引用符号
=GET.CELL(63,Sheet1!T8)=0
- 2.2创建条件格式
开始→条件格式→新建规则→如下图设置,选择使用公式要设置格式的单元格→输入规则公式→在格式中选择填充颜色
//注意最后一个参数要与上边的公式标签名称一致
=AND((CELL("col")=COLUMN())+(CELL("row")=ROW()),getcell)
- 2.3设置规则生效的范围
在规则管理器中管理刚才添加的规则应用区域
- 2.4添加自动刷新VB程序
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Application.ScreenUpdating = True
End Sub
最终效果:
可以发现原来的单元格颜色还在,但是当整行整列填充颜色的时候可能会出现问题,有得有舍吧,看需求,总之两种方案都不是很完美。