仅在某些单元格更改时进行计算

时间:2018-10-08 16:15:53

标签: excel vba excel-formula

如果可以的话,我在Google上进行了一些搜索,但找不到答案。

有没有一种方法可以让Excel仅计算是否以任何方式更改/更新了单元格A2:Z300(例如) 计算=自动 以及工作表中的所有其他单元格 计算=手动

可以是VBA。 感谢有关此的任何提示

1 个答案:

答案 0 :(得分:1)

将计算设置为手动:

Application.Calculation = xlCalculationManual

并在所需的工作表上添加工作表更改事件:

Private Sub Worksheet_Change(ByVal Target as Range)
    'Checks whether the changed range has an intersection within your desired range:'
    Set isect = Application.Intersect(Target, Me.Range("A2:Z3000"))        

    If Not isect is Nothing then 'ie, there is an intersection, call the calculation.
        Application.Calculate
    End If
End Sub

请记住,只要您的工作表中发生任何任何更改,您的子目录就会运行。