Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("A1")) Is Nothing Then
Range("B" & Cells(Rows.Count).Row).End(xlUp).Offset(1, 0).Value = Range("A1").Value
End If
End Sub
Cell A1具有公式" = C1"例如,当单元格的值发生变化时,它不会被添加到B列中的过去值列表中,但是当手动更改A1时,将添加新值。
Theres山区的示例代码在这里和谷歌解决这个问题,但经过2个小时的试验和错误解决方案,我觉得我别无选择,只能寻求帮助。
我通常可以找到我需要复制的代码部分,但网上的所有示例都是为我详细说明的。
我尽力学习,但愿意为此提供帮助。
答案 0 :(得分:0)
如果A1引用C1,则测试C1是否已更改:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("C1")) Is Nothing Then
Range("B" & Cells(Rows.Count).Row).End(xlUp).Offset(1, 0).Value = Range("A1").Value
End If
End Sub
答案 1 :(得分:0)
因此,如果您更改的目标的其中一个家属是A1
,您需要做出反应。
Private Sub Worksheet_Change(ByVal Target As Range)
Application.EnableEvents = False
On Error GoTo mEnd
If Not Intersect(Target.Dependents, Me.Range("A1")) Is Nothing Then
Me.Range("B" & Me.Cells(Me.Rows.Count).Row).End(xlUp).Offset(1, 0).Value = Me.Range("A1").Value
End If
mEnd:
Application.EnableEvents = True
End Sub