我有一个包含数千行数据的电子表格。我创建了一个索引列,并希望根据值突出显示单元格或行(最好)。
我尝试了色标,但这只是做了一个渐变,并没有达到我的目标。
我需要避免使用 VBA 代码或宏。 Excel版本:O365
我不确定你是否可以避免宏。
假设您有 2 列(A 和 B),并且您希望根据 A 列的值对行进行着色,该值可以是以下之一:a,b,c,d,e,f,g
一个简单的解决方案如下:
创建宏(Alt+F8)
在宏名称中输入宏的名称,即Format_rows
选择“创建”
将以下代码粘贴到“Sub Format_rows()”和“End Sub”之间
i = 1
j = Sheet1.Cells(1, 1)
While Not IsEmpty(j)
cur_range = "A" & i & ":B" & i
Select Case j
Case "a" ' Color for value "a"
col_code = 0.1
Case "b" ' Color for value "b"
col_code = 0.2
Case "c" ' Color for value "c"
col_code = 0.3
Case "d" ' Color for value "d"
col_code = 0.4
Case "e" ' Color for value "e"
col_code = 0.5
Case "f" ' Color for value "f"
col_code = 0.6
Case "g" ' Color for value "g"
col_code = 0.7
End Select
Range(cur_range).Select
With Selection.Interior
.Pattern = xlSolid
.PatternColorIndex = xlAutomatic
.ThemeColor = xlThemeColorAccent1
.TintAndShade = col_code
.PatternTintAndShade = 0
End With
i = i + 1
j = Sheet1.Cells(i, 1)
Wend
根据您希望用于对行进行分类的值修改案例“a”、案例“b”等,并根据需要删除或添加更多案例。
将 Excel 文件另存为“.xlsm”。
运行宏 (Alt+F8)>运行。