《VBA代码解决方案》(版权10028096)这套教程是我最早推出的教程,目前已经是第三版修订了。这套教程定位于入门后的提高,在学习这套教程过程中,侧重点是要理解及掌握我的“积木编程”思想。要灵活运用教程中的实例像搭积木一样把自己喜欢的代码摆好。
这套教程共三册,一百四十七讲,内容覆盖较广,也是初级和中级间的过渡教程,改版后的内容主要是提供程序源码文件及代码修正为32位和64位兼用代码。今后一段时间会给大家陆续推出。今日的内容是VBA代码解决方案第十五讲:如何对单元格区域进行高亮显示
【分享成果,随喜正能量】不要对任何人,对任何事物心怀丝毫的敌意,这是让自己获得身心健康的第一原则。。
第十五讲 如何对单元格区域进行高亮显示
大家好,今日的内容是第十五讲,如何利用VBA代码完成对选择区域单元格的高亮显示。在实际工作中VBA方案的应用非常的广泛,巧妙的利用这些方案可以提高自己的工作效率,同时可以增加自己程序的美观效果。
1 利用ColorIndex属性对活动单元格区域进行突出显示
如果希望以某种方式突出显示活动单元格或者指定的单元格区域,从而一目了然地获得某些信息,那么可以高亮显示活动单元格区域,如下面的代码所示。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Cells.Interior.ColorIndex = xlColorIndexNone
Target.Interior.ColorIndex = 36
End Sub
代码截图:
代码解析:上述代码实现了设置工作表当前选定区域单元格的内部填充颜色,以高亮显示选定区域。这里设置的是淡黄色。
1) 第2行代码将工作表中所有的单元格的内部填充颜色设置为xlColorIndexNone,即取消单元格的内部填充颜色。
2) 第3行代码将工作表中选定单元格的内部填充颜色设置为36。应用于Interior对象的ColorIndex属性返回或设置边框内部的颜色。该颜色可指定为当前调色板中颜色的编号或为 XlColorIndex 常量之一:xlColorIndexAutomatic(指定对图形对象自动填充)、xlColorIndexNone(用于指定无内部填充)。
运行效果:
2 突出显示指定区域内的行和列
可以突出显示指定区域内的行列,如下面的代码所示。
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
'Cells.Interior.ColorIndex = xlColorIndexNone
'Target.Interior.ColorIndex = 36
Cells.Interior.ColorIndex = xlNone
Set Rng = Application.Union(Target.EntireColumn, Target.EntireRow)
Rng.Interior.ColorIndex = 36
End Sub
代码截图:
代码解析:设置工作表当前选定区域单元格内部填充颜色,高亮显示活动单元格所在的行和列。
1) 第5行代码使用Union方法将所选单元格所在的行、列连接起来成为一个区域。
2) 使用此方法时,工作表中所有设置的单元格内部填充颜色将会被清除。(不包括通过条件格式设置的单元格内部填充颜色)。
运行结果:
今日内容回向:
1 Worksheet_SelectionChange 动作的意义是什么?
2 Application.Union(Target.EntireColumn, Target.EntireRow) 的意义是什么?
3 读者是否按照截图实现了运行效果呢?
本讲内容参考程序文件:VBA代码解决方案(1-19).xlsm
我20多年的VBA实践经验,全部浓缩在下面的各个教程中: