在 Sheet1 中,我有一个单列,其中包含 1-20 行的填充单元格,其中包含常规数字。看下图:
在 Sheet2 中,我还有一列,单元格从 5-25 开始。如果我在这些单元格中输入一些值,则在 Sheet1 中,从具有相同值的单元格到“D”列的背景颜色会发生变化。看看下面的图片,看看它是如何工作的:
我正在用这段代码来做:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Column = 1 And Target.Row >= 5 Then
If Target.Offset(0, 0).Text <> "" Then
Dim n As Long
For n = 5 To 25
If Target.Offset(0, 0).Value = Worksheets("Sheet1").Range("A" & n).Value Then
Worksheets("Sheet1").Range("A" & n & ":D" & n).Interior.ColorIndex = 3
End If
Next n
End If
End If
End Sub
现在,我想在每次激活 Sheet1 时进行某种检查,以某种方式,如果Interior.ColorIndex = xlNone
Range("A1:A20") 中的所有单元格的单元格中没有值,如果某些单元格中有值Interior.ColorIndex = 3
对于那些细胞。我正在考虑将这些值放入一个数组中,然后循环遍历它以比较值,但我是 VBA 新手,所以欢迎提供帮助。如果有更好的解决方案,只需提出来。
另外,如果我将值 12 替换为 17,则我想为一种情况编写一段代码,Interior.ColorIndex
其中包含 12 的单元格转到xlNone
和 17Interior.ColorIndex
转到“ 3
”。
所以,欢迎每一个建议。