如何在没有圆形错误的情况下使两个单元相互依赖?

Tra*_*ith 0 excel vba excel-vba excel-2013

在Excel 2013中,我有单元格A1,A2和A3以及B1,B2和B3.A列是年度计算,B列是每周计算.

例如,如果用户更新A1(例如5200),我想自动更新B1(例如,100).如果用户更新B1(例如50),我想自动更新A1(例如,2600).同样适用于A2-B2和A3-B3.

当我尝试监视两者时,它会创建一个循环问题并且Excel崩溃.

Dav*_*ens 5

那时候根本不要使用公式.使用这样的_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
Run Code Online (Sandbox Code Playgroud)