i在A1中具有日期,在B1中具有数字,类似地在D1中具有日期,在E1中具有数字。每当值分别在A1和D1中更改时,我希望b1和e1递增1。我希望对所有行ex都应用相同的逻辑(如果a2中的某些内容发生变化,则b2应该增加1个数字,如果a3中的某些内容进行了更新,则b3应该增加1个数字。类似地,如果d2被更新,则e2应该增加1个数字,如果d3更新,那么e3应该增加1个数字。
我尝试使用此VBA代码
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Application.EnableEvents = False
Range("B1").Value = Range("B1").Value + 1
Application.EnableEvents = True
End If
If Not Intersect(Target, Range("D1")) Is Nothing Then
Application.EnableEvents = False
Range("E1").Value = Range("E1").Value + 1
Application.EnableEvents = True
End If
End Sub
但是当我尝试将范围放入特定单元格时,它仅对那些特定的单元格有效,它不起作用。
我现在没有可用的excel,但请尝试此操作
Private Sub Worksheet_Change(ByVal Target As Range)
Dim shAdd as string
If Not Intersect(Target, Range("A:A")) Is Nothing Then
Application.EnableEvents = False
shAdd = "B" & Target.Row
Range(shAdd).Value = Range(shAdd).Value + 1
Application.EnableEvents = True
End If
If Not Intersect(Target, Range("D:D")) Is Nothing Then
Application.EnableEvents = False
shAdd = "E" & Target.Row
Range(shAdd).Value = Range(shAdd).Value + 1
Application.EnableEvents = True
End If
End Sub