使用VBA进行颜色填充,根据单元值进行
我正在寻找在单元格中select的文本(将有一个下拉菜单,其中两个值是“SD”和“CS”)在Excel中的颜色填充单元格范围(C2:C7)。 这是我的代码到目前为止:
Sub ChangeColor()Dim rCell As Range
With Sheet1 For Each rCell In .Range("C2:C7") If rCell.Value <= SD Then rCell.Interior.Color = vbRed ElseIf rCell.Value <= CS Then rCell.Interior.Color = vbGreen Else: rCell.Interior.Color = vbYellow End If End With End Sub
我被告知有一个编译错误:结束与没有
我刚刚开始在VBA,所以有人可以告诉我我做错了什么?
要修复你的代码,你需要插入一个Next
语句。 在End With
之前行。 另外,最好使用缩进来直观地看到不同的代码块。 在你的情况下,它看起来像这样:
Sub YourSub 用Sheet1 对于每个rCell In .Range(“C2:C7”) 如果rCell.Value <= SD那么 rCell.Interior.Color = vbRed 否则如果rCell.Value <= CS那么 rCell.Interior.Color = vbGreen 其他 rCell.Interior.Color = vbYellow 万一 下一个rCell 结束 结束小组
此外,考虑在这里使用条件格式而不是VBA – 它会做同样的事情,但更容易!