我有一个宏,当范围(s1:s100)中的任何单元格发生变化时,应触发该宏。范围s1:s100由另一个宏填充,并且值不断变化
我有下面的代码,当仅更改范围中的一个单元格时,它可以正常工作。如果同时更改多个单元格,则该单元不起作用。一次更改多个单元格时,我收到消息“无变化”。
Sub Worksheet_Change(ByVal Target As Range)
Dim keyscells as Range
Set KeyCells = Range("S1:S100")
If Not Application.Intersect(KeyCells, Range(Target.Address)) _
Is Nothing Then
msgbox Target.Address
'execute my macro
else
msgbox 'no change'
end if
end sub
任何帮助表示赞赏!
添加了更多信息 当我同时编辑多个单元格时,例如说S1 S4和S8,它会说S1已更改(只需选择第一个)。但是我需要确定所有三个已更改的单元格。
谢谢
Valli