当一个工作簿内包含的公式越多,那么它的运行速度就会越慢。甚至会在操作时出现无法响应的状态。导致这种情况的原因是公式运算,当你进行一次计算操作时,表格内的所有公式都会重新进行一次计算。所以,如果我们可以限制计算区域,减少重新计算公式的数量,是不是就可以避免或者减少表格卡顿的状况呢?

其实在Excel的公式栏内,为使用者提供了公式的三种计算方式:自动、除模拟运算表外,自动计算、手动。

如何设置excel中公式的计算方式并优化表格运行速度?-天天办公网

自动状态下,公式会自行进行计算。手动状态下,公式只在保存工作簿时进行计算。除模拟运算表外,自动计算,这里的模拟运算表,工作中很少用到。

三种方式的命令是针对整个工作簿的,意思是,当你点击手动时,整个工作簿内的公式都不会进行自行计算。

这里介绍几句代码,可以指定当前工作簿内的部分表格不计算、指定当前工作表的部分单元格区域计算。

Sub 代码1()
Application.Calculation =xlCalculationManual
Range("a1:c5").Calculate
End Sub

Calculation = xlCalculationManual首先指定当前工作的计算方式为手动。

Range(“a1:c5”).Calculate再设置单元格区域a1:c5内的公式进行计算。

由于整个工作簿已经设置为手动,所以只有单元格区域a1:c5才会进行计算。

Sub 代码2()
Sheets("测试").EnableCalculation= False
End Sub

这句代码的意思是,指定工作表“测试”不进行计算。如果需要只允许当前活动工作表可计算,那么可以先将所有表的EnableCalculation设置为False,再对当前活动表设置为True。

Sub 代码3()
Dim sht As Worksheet
For Each sht In Sheets
sht.EnableCalculation = False
Next
ActiveSheet.EnableCalculation = True
End Sub

至此,如何设置excel中公式的计算方式,优化表格运行速度就讲完了。