我试图在动态范围内(在一列中)查看单元格值是否等于 0。如果是,则显示一条弹出消息并将 A、B 和 C 列(相同的行号)的颜色更改为红色的。
任何帮助是极大的赞赏。!!谢谢你。
Private Sub Worksheet_Change(ByVal Target As Range)
Dim KeyCells As Range
Set KeyCells = Range(Cells(9, "AD"), _
Cells(Rows.Count, "AD").End(xlUp).Resize(, 1))
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
If Application.Intersect(KeyCells, Range(Target.Address)) = 0 Then
MsgBox "Row " & Target.Address & " will not be considered."
End If
~~ 我尝试在上面的代码IF
块中使用下面的代码,但是得到了所有行(直到当前计数)的相同结果,背景颜色发生了变化。我打算将颜色更改限制在该行和列A, B , C
(单元格)。
~~ 现在,在这里我想看看,如果单元格值等于“0”,那么前 3 列单元格(A, B, C
相同行号的列应该用不同的背景颜色更新)。
~~ 我尝试将完整的行颜色更改为红色,但是这样做时,直到当前行的所有行都会发生颜色变化。这不是故意的。这是因为范围是动态的吗?
For Each Cell In KeyCells
Select Case Cell.Value
Case Is = 0
Cell.EntireRow.Interior.ColorIndex = 3
Case Else
Cell.EntireRow.Interior.ColorIndes = xlNone
End Select
Next
End If
End Sub