Excel中如何设置选择的行列自动改变颜色?
来源:网络收集 点击: 时间:2024-08-20Ctrl+A将Excel单元格全选(如果只需要设置部分区域实现选择单元格行列变肺宿色的效果,那么这里就选择这个“部分区域”),点击“开始”选项卡中的“条件格式”,选择“新建规则”,如下图所示:

“选择规则类型”中选择“使用公式确定要设置格式的单元格”,并在下面的文本框中输入公式:=(CELL(row)=ROW())+(CELL(col)=COLUMN())
公式解菌蚊释:公式分两部分,第一部分:(CELL(row)=ROW())——利用cell(“row”)函数获得条件格式区域单元格的行号与利用row行数获得的当前单元格行号进行比较,如果相等则返回TRUE,否则返回FALSE;第二部分(CELL(col)=COLUMN())——利用cell(“col”)函数获得条件格式区域单元格的列数与利用column行数获得的当前单元格列进行比较,如果相等则返回TRUE,否则返回FALSE;两部分相加,即满足其中任意一个条件就返回TRUE,触发条件格式,都不满足时才返回FALSE无法出发条件格式。

然后点击右下角的“格式”,进入格式设置对话框,这里设置填充底色为黄色,如下图所示:

点击确定后,捧川脾返回Excel,可以看到第一行和第一列已经填充了黄色,但是这个颜色并不会随着选择的单元格而变化,如下图所示:

按下Alt+F11,打开VBE界面,选择左侧的当前工作表,并在右侧空白处复制粘贴如下代码:
Private Sub Worksheet_SelectionChange(ByVal Target As Range)
Calculate
Application.ScreenUpdating = False
Application.ScreenUpdating = True
End Sub
代码解释:当选择单元格时触发代码,代码内容为重新计算。也就是每次选择单元格,会执行重新计算的VBA代码,因此条件格式中的公式会重新计算,使得当前选择的单元格对应的行列变色。另外,添加强制屏幕刷新是要消除可能存在的显示Bug。

返回Excel,这样就实现了选择单元格,这个单元格对应的行列变色,如下图所示:


如果单元格设置的格式与条件格式冲突(例如都设置了填充底色),则会变条件格式临时覆盖,选择其他单元格后,原来的格式又会出现,也就是说不会影响原来的设置。
EXCELVBA自动变色行列变色高亮显示版权声明:
1、本文系转载,版权归原作者所有,旨在传递信息,不代表看本站的观点和立场。
2、本站仅提供信息发布平台,不承担相关法律责任。
3、若侵犯您的版权或隐私,请联系本站管理员删除。
4、文章链接:http://www.1haoku.cn/art_1144617.html