将目标寻求宏计算限制为工作表

时间:2018-07-13 19:31:42

标签: vba worksheet

运行以下Goaleek宏时,我正在寻求将excel计算限制为工作表的帮助:

Sub GoalSeekRange()
For j = 2 To 100000
Cells(j, "BF").GoalSeek Goal:=Cells(j, "AY").Value, ChangingCell:=Cells(j, "AF")
   Next j
   End Sub

我已经在进行手动计算,但是对于每次循环的Goaleek运行,它都会计算整个工作簿,从而极大地减慢了计算过程(我知道这是正确的,因为我已经对其进行了测试,并最终通过创建仅包含此特定工作表的工作簿)。

我可以在代码中包含将计算限制为当前工作表的任何内容吗?我宁愿不必在每次需要运行此宏时都创建另一个工作簿。

非常感谢您,

安德烈

1 个答案:

答案 0 :(得分:0)

将您的代码放入其中:

Application.Calculation = xlCalculationManual
    'Your code here
Application.Calculation = xlCalculationAutomatic

此外,您的Cells不合格,这意味着这将默认为活动工作表。您应该使用表格来限定单元格,而不要依靠ActiveSheet

关闭ScreenUpdating也不会造成伤害。 (Application.ScreenUpdating = True/False