我正在尝试创建一个VBA,它将在一个表中将特定列/列范围的计算设置为手动,该表被设置为自动计算。
因为仪表板已经太慢了,所以我不希望这些特定的列/范围像表的其他部分那样自动计算。我正在使用这个vba,但是当我第一次将cust #加载到我的excel仪表板时,我的整个表仍然在自动计算。
Sub Recalc()
Selection.Calculate
End Sub有什么想法吗?
发布于 2017-07-18 15:40:34
您不能直接打开或关闭特定区段的计算,它必须应用于应用程序。最好的方法是关闭应用程序的所有计算,然后设置一个更改宏,以便在发生特定范围的更改时重新计算。这需要写在VBA编辑器的适当的工作表部分,而不是模块中。
示例:
Private Sub Worksheet_Change(ByVal Target As Range)
If Not Intersect(Target, Range("B3:Z100")) Is Nothing Then
Range("B3:Z100").Calculate
End If
End Subhttps://stackoverflow.com/questions/45171232
复制相似问题