在Excel 2013中,我有单元格A1,A2和A3以及B1,B2和B3。A 列是年度计算,B 列是每周计算。
例如,如果用户更新 A1(例如,5200
),我想自动更新 B1(例如,100
)。如果用户更新B1(例如,50
),我想自动更新A1(例如,2600
)。A2-B2 和 A3-B3 也是如此。
当我尝试同时监视两者时,它会产生循环问题并且 Excel 崩溃。
那就不要使用公式了。使用如下所示的_Change
事件:
Private Sub Worksheet_Change(ByVal Target As Range)
If Target.Cells.Count > 1 Then Exit Sub
If Intersect(Target, Range("A:B")) Is Nothing Then Exit Sub
Application.EnableEvents = False 'Prevent infinite looping
If Target.Column = 1 Then
'User has changed something in column A:
Target.Offset(0, 1).Value = Target / 52
Else
'User has changed something in column B:
Target.Offset(0, -1).Value = Target * 52
End If
Application.EnableEvents = True
End Sub