如何只计算Excel中的活动工作表?

问题描述 投票:2回答:2

我在多个工作表中进行了大量计算(10多张,30000多行,250多列,大约50%具有依赖性)。

我有一个VBA程序,它运行一个变量列表,一次更改一个变量。这会使用公式更改所有单元格中的值。

每次更改变量时,我都不需要重新计算所有工作表。

有没有办法只重新计算活动工作表或指定的工作表?

excel vba
2个回答
12
投票
ActiveSheet.Calculate

要么

vbasheetname.Calculate

要么

Worksheets("Sheet1").Calculate

如果可能的话,最好避免在代码中使用activesheet(很少需要它),所以尽量坚持使用后两者。


1
投票

没有VBA的一种方法是使公式依赖于布尔单元格。如果bool是真的,那么他们计算,否则他们不计算。

然后在此布尔单元格中,键入以下公式:=CELL("filename") = CELL("filename", [B1])。然后在此工作表上放置一个简单的切换按钮,该按钮链接到工作表中的任何单元格。然后,每当按下切换按钮时,链接的单元格将更改值,这将导致布尔单元格中的公式生成TRUE而不是FALSE,然后将计算依赖于此布尔单元格的所有单元格。

示例#1

例#2

这不会阻止细胞计算,但它会使计算速度超快。

© www.soinside.com 2019 - 2024. All rights reserved.