我写了以下宏,以突出显示特定范围内的任何变化:
Private Sub Worksheet_Change(ByVal Target As Range)
' Tracking Changes In Yellow
Dim KeyCells As Range
Set KeyCells = Range("L12", Range("L12").End(xlDown))
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
Target.Interior.ColorIndex = 6
End If
该宏运行得很好,除了我在图表区域以外的单元格中输入新值时(我无法使用该值),这是由于我使用范围Range("L12", Range("L12").End(xlDown)
导致的问题。
如您在图片中看到的,如果我在其下输入一个新值,由于End(xlDown)
,它将以黄色突出显示,但是如果我在两个单元格之外都将其突出显示则不会。解决此问题的最佳方法是什么?
答案 0 :(得分:0)
这取决于您的需要。如果它将始终位于J列中,则:
Private Sub Worksheet_Change(ByVal Target As Range)
' Tracking Changes In Yellow
Dim KeyCells As Range
Set KeyCells = Range("L12", Range("L" & Rows.Count))
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
Target.Interior.ColorIndex = 6
End If
End Sub