Excel表格填充相同的字体颜色
如下表所示,在同一行里面的B~I列的单元格里面只要一个单元格的字体是红色,则在第A列相应的单元格填充成红色。Excel的条件格式、函数并不能实现这样的功能,手动处理也比较麻烦,还是使用VBA程序处理比较快捷一些。
操作方法
- 01
打开Excel表格,点击【开发工具】、【Visual Basic】打开VBA编辑器,或者按下【Alt+F11】组合键打开VBA编辑器。
- 02
在VBA编辑器的菜单栏上面点击【插入】、【模块】。
- 03
在模块1的代码窗口里面输入以下VBA程序代码,之后点击功能区里面的“运行”图标运行程序,或者按下【F5】键运行程序。 Sub FontColor() Dim i, j, k On Error Resume Next '忽略运行过程中可能出现的错误 Set mysheet1 = ThisWorkbook.Worksheets("Sheet1") '定义工作表 Sheet1 k = RGB(255, 0, 0) '把红色的RGB值赋给k For i = 1 To 1000 '从第1行到1000行 For j = 2 To 9 '从第2列到第9列 If mysheet1.Cells(i, j).Font.Color = k Then '如果单元格里面的字体颜色是红色,则 mysheet1.Cells(i, 1).Font.Color = k '第1列对应单元格的字体颜色改成红色 Exit For '退出For循环,以较少执行次数 End If Next Next End Sub
- 04
回到工作表界面,将会看到程序执行的结果。
- 05
两个“For……Next”嵌套使用里面,每执行一次外面的“For……Next”,则需要等到里面的“For……Next”执行完之后再执行一次外面的“For……Next”,如此循环,待外面的“For……Next”执行结束,则循环结束,具体的可以按下【F8】键逐步执行、观察。 (2)不确定RGB数值所对应的颜色时,可以在工作表的功能区里面点击字体颜色的下拉选项选择“其他颜色”,再点击【自定义】,选择RGB并依次输入数值即可看到新增的颜色(即:RGB数值对应的颜色)。