【发布时间】:2018-09-26 23:08:28
【问题描述】:
我正在尝试编写一个宏,该宏将更新列中与下面相邻列具有相同值的所有单元格,这些单元格在我要完成的操作之前和之后。在此示例中,您将更新 B1,然后 A1 中具有相同值的任何单元格将更新为 B1 值
这是我正在使用的代码
Private Sub Worksheet_Change(ByVal Target As Range)
Dim rng1 As Range
Dim cel As Range
Set rng1 = Range("A1", Range("A2").End(xlDown))
For Each cel In rng1
If cel = Target.Offset(0, -1).Value Then
cel.Offset(0, 1).Value = Target.Value
End If
Next cel
End Sub
我不确定我写的内容是否正确,但我一直在退出堆栈空间错误,我认为这是由于每次通过更改相同的单元格而不断循环的宏。我相信这应该是可能的,但我有点迷茫。
【问题讨论】:
-
Application.enableevents = false。确保在退出之前设置为 true。
-
@ScottCraner 其余代码是否符合预期结果?
-
我还将添加一个测试以确保它仅在 b 列更改时触发。但否则只是看着它应该做你想做的事。
标签: excel vba for-loop triggers