Vba 将目标搜索宏计算限制为工作表
我正在寻找在运行以下goalseek宏时将excel计算限制为工作表的帮助:Vba 将目标搜索宏计算限制为工作表,vba,worksheet,Vba,Worksheet,我正在寻找在运行以下goalseek宏时将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 我已经开始手动计算了,但对于goalseek每次运行的迭代,它都会计算整个工作簿,大大降低了计算过程的速度(我知道这是真的,因为我已经测
Sub GoalSeekRange()
For j = 2 To 100000
Cells(j, "BF").GoalSeek Goal:=Cells(j, "AY").Value, ChangingCell:=Cells(j, "AF")
Next j
End Sub
我已经开始手动计算了,但对于goalseek每次运行的迭代,它都会计算整个工作簿,大大降低了计算过程的速度(我知道这是真的,因为我已经测试过了,并最终通过仅使用此特定工作表创建工作簿来避免它)
我是否可以在代码中包含任何将计算限制到当前工作表的内容?我不希望每次需要运行此宏时都要创建另一个工作簿
多谢各位
Andre将您的代码放入:
Application.Calculation = xlCalculationManual
'Your code here
Application.Calculation = xlCalculationAutomatic
此外,您的
单元格
不合格,这意味着这将默认为活动工作表。您应该使用工作表来限定单元格,而不是依赖于ActiveSheet
关闭
屏幕更新也不会有什么坏处。(Application.ScreenUpdate=True/False
)感谢您的回复。不幸的是,这些修改并没有阻止excel计算其他工作表,因此减慢了整个计算。。。